vue打包成dist
一,更新操作系统和安装依赖包
更新操作系统软件库
sudo apt-get update
sudo apt-get upgrade
安装上传rz、下载sz工具
sudo apt-get install lrzsz
安装gcc g++的依赖库
sudo apt-get install build-essential
sudo apt-get install libtool
安装 pcre依赖库
sudo apt-get install libpcre3 libpcre3-dev
安装 pcre依赖库
sudo apt-get install zlib1g-dev
安装 ssl依赖库
sudo apt-get install openssl
二,安装python环境
Ubuntu16.04版本最新的Python 3.x为版本3.5
要安装Python 3.6 ,请运行以下命令:
# wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz
# tar -xvf Python-3.6.2.tar.xz # cd Python-3.6.2
# ./configure
# make && make install
此时系统会为python3.6安装对应的pip,可能为pip3或pip3.6
查看方法:pip3/pip3.6 -V
更新pip:
pip3.6 install --upgrade pip
更新软件列表:
pip3.6 install --update pip
软连接==============
- 修改默认Python版本
Ubuntu16.04版本集成了Python2.7及3.5版本,系统中原来的python在/usr/bin/python,通过ls -l可以看到,python是一个软链接,链接到本目录下的python2.7
我们需要先把这个默认链接删除,再新建一个python3.6的软链接.。首先要确保终端的指针已经退回根目录,再进行以下操作。
- 需要删除原有的Python链接文件: rm /usr/bin/python
注意如果终端提示:rm: 无法删除’/usr/bin/python’:权限不够,那么就需要使用sudo或者打开root权限删除链接。
- 建立指向Python3.6的链接,权限不够的话使用root或者sudo加命令:
ln -s /usr/bin/python3.6/bin/python3.6/usr/bin/python
查询Python版本
python@ubuntu:~$ python -V
Python 3.6.5
如果显示是python3.6.5则说明安装成功!
pip -V查看pip对应的版本,版本不对的话删除pip使用软连接,重新下载
which pip查看pip安装路径
三、建立两个文件夹,用于存放virtualenv环境和项目
放虚拟环境的
sudo mkdir -p /data/env
放项目的
sudo mkdir -p /data/wwwroot
四、安装virtualenv
sudo pip3 install virtualenv
进入env目录
cd /data/env
指定Python版本,创建名为pyweb的虚拟环境,
查找虚拟环境位置
find / -name virtualenv
sudo virtualenv -p /usr/bin/python3 pyweb
指定Python版本的时候,如果不知道Python3的路径,可以使用下面的命令查看
检查版本
uwsgi --python-version
which python
五、启动虚拟环境
这里环境名为venv,所以source venv/bin/activate
关闭环境 deactivate
启动虚拟环境
source /data/env/pyweb/bin/activate
pip3 freeze > requirements.txt 安装依赖
deactivate 退出虚拟环境
nginx+uwsgi部署
pip 安装uwsgi
在项目根目录中
uwsgi命令启动falsk项目
uwsgi --http :8000 --wsgi-file uwsgi_test.py
-
创建一个uwsgi.ini配置文件,写入参数信息
在项目的外层目录中创建配置文件,与manage.py在同一目录即可, cd /opt/s15vuedrf/luffy_boy touch uwsgi.ini [uwsgi] chdir = /opt/s15vuedrf/luffy_boy/ module = luffy_boy.wsgi home = /root/Envs/s15vuedrf master = true processes = 1 socket = 0.0.0.0:9000 # 与nginx连用,启动项目时使用 socket # http = 0.0.0.0:9000 # 只有uwsgi启动的时候使用 http vacuum = true
保存后uwsgi --ini uwsgi.ini 启动
uwsig示例:
[uwsgi]
http=本地ip:8081 #只使用uwsgi的话使用本地ip
socket=127.0.0.1:9000
chdir=/data/wwwroot/mysite
wsgi-file=mysite/wsgi.py
processes=4
threads=2
master=true
pidfile=uwsgi.pid
daemonize=uwsgi.log
nginx查找项目
2.配置文件/etc/nginx/nginx.conf如下:
#第一个server虚拟主机是为了找到vue的dist文件, 找到路飞的index.html
server {
listen 80;
server_name 公网ip;
#当请求来自于 公网ip/的时候默认80端口,直接进入以下location,然后找到vue的dist/index.html
location / {
root /data/wwwroot/dist;
index index.html;
}
}
#由于vue发送的接口数据地址是 公网ip:8000 我们还得再准备一个入口server如下
server {
listen 8000;
server_name 公网ip;
#当接收到接口数据时,请求url是 公网ip:8000 就进入如下location
location / {
#这里是nginx将请求转发给 uwsgi启动的 9000端口,uwsgi.ini文件中端口9000,的项目将被启动
uwsgi_pass 公网ip:9000;
# include 就是一个“引入的作用”,就是将外部一个文件的参数,导入到当前的nginx.conf中生效
include uwsgi_params;
}
}
3.启动nginx
nginx # 直接启动服务,如果没有添加系统环境变量就用绝对路径启动,/opt/nginx112/sbin/nginx
此时可以访问 192.168.13.210 查看页面结果即可,显示正常则完成项目的部署
启动路飞项目,这个项目用的是sqllite,因此安装mysql自行选择
数据资料来源 依赖包和虚拟环境 https://www.jianshu.com/p/72575581564c
python安装https://blog.csdn.net/qq_42734759/article/details/89096156
python安装软连接 https://blog.csdn.net/JiekeXu/article/details/80299370
nginx+uwsgi部署django+vue
https://www.cnblogs.com/cyycyhcbw/articles/10218458.html