ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

阿里云 django+vue+nginx 前后端分离之后端部署

2020-12-10 13:34:57  阅读:550  来源: 互联网

标签:virtualenv 解压 vue zip 端口 django nginx ini uwsgi


0 环境

  • 服务器:阿里云
  • 服务器操作系统:centos
  • ssh :xshell
  • 后端语言:django
  • python默认版本:3.6.8

1 导图

环境基础+部署流程
环境基础+部署流程

2 xhsell安装和配置

xshell安装包+配色方案下载

xshell安装 使用遇到的问题 + 配色方案

3 激活python环境

参考文档

1 环境安装

pip/pip3 install virtualenv

2 创建目录

若想virtualenv使用系统全局模块,virtualenv --system-site-packages myprojects

virtualenv myprojects

3 环境激活

source myprojects/bin/activate

4 退出virtualenv

deactivate

3 上传本地项目到服务器上

  1. 压缩本地文件(我用的是zip格式)
  2. 通过ftp上传到服务器上(自己指定目录)
  3. 解压文件
# CentOS8 系统是默认没有安装zip组件的,我们需要手动安装 zip 和 unzip 服务。
dnf install zip unzip -y
# 解压示例,格式为:unzip [压缩文件] [被解压的目录或文件]。
# unzip aa.zip -d /test 将aa.zip 文件解压到 /tset 目录下,-d 是显示指定解压到的目录。
# 把django项目解压到我的virtualenv环境下
unzip hello.zip -d /myprojects

4 django项目相关库安装

  1. 因为涉及到跨域,在django项目找到settings.py,在CORS_ORIGIN_WHITELIST下添加你的服务器地址 还有就是正式运行时 改为DEBUG = False
  2. 启动python manage.py runserver
  3. 会报没有某个模块的错,复制该模块名,搜索得到具体包名,pip安装,直接正常启动为止
  4. 可以pip/pip3 list查看

5 配置uWSGI

1 安装uwsgi

pip install uWSGI

2 配置uwsgi.ini

配置.ini 第一行一定要加[uwsgi] 不然会报错

「1. 创建uwsgi.ini,可以直接输入vim uwsgi.ini

「2. 将下面配置复制到uwsgi.ini里」

[uwsgi]
chdir   =/var/xxx/你的虚拟环境/你的项目目录
module  =你的项目名称.wsgi
home    =/var/xxx/你的虚拟环境
master  =true
processes  =4
socket  =127.0.0.1:9090
chmod-socket = 666
vacuum = true

「3. 分别进入你的项目目录和虚拟环境 输入pwd 直接复制路径 修改uwsgi.ini里的路径即可」

「4. socket自定义端口配置」

「5. 最后:wq保存即可」

3 启动uWSGI

加 -d 后台运行 也可以在uwsgi.ini添加

1 测试的时候

命令最好是uwsgi --ini uwsgi.ini 关闭程序 --> ctrl+c

2 运行的时候

  • 在输入命令uwsgi -d --ini uwsgi.ini
  • 提前了解一下lsof -i:端口 查看端口

6 阿里云配置

1 阿里云安全组配置 开放端口

添加端口 保存即可

2 在centos8中开放防火墙

7 本地访问公网

比如你的公网ip:自定义的端口/path?参数 若排除都没问题 可以安装nginx 配置一个监听端口 测试一下

标签:virtualenv,解压,vue,zip,端口,django,nginx,ini,uwsgi
来源: https://www.cnblogs.com/my-ordinary/p/14113671.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有