最近,自己写了一些Django 的小应用,因一直在本机做测试及使用,未将其部署至服务器。然而当部署至公司服务器的时候,各种环境问题频出,如Python3没有安装加密模块及Sqlite版本太低等,因为是公司服务器无法找到比较干净的环境,故考虑使用Docker来部署。
查阅网上资料,各个概念就不在这一一做介绍,开始实战:
准备:请在Django的setting文件中将DEBUG设置为False(部署在正式环境,该项肯定要设为False。同事,如果在调试环境中设置为false,则会出现找不到static路径下资源的情况,如:加载不了css和js文件("Failed to load resource: the server responded with a status of 404 (Not Found)")。另外,设置 ALLOWED_HOSTS = ['']
requirmenttxt 如下:
PS: uwsgi 也可先使用命令启动来检测程序是否正常: uwsgi -->
nginx服务器:1反向代理,代理uwsgi服务器。2静态文件服务器,提供静态文件访问。
①首先在linux下创建一个专门用于存放要部署的项目的文件夹django_worker。
②先在其中创建虚拟环境
创建虚拟环境的命令:virtualenv django_lib。相当于拷贝了一份纯净的python环境。
③进入虚拟环境
source /django_lib/bin/activate
安装需要的模块:
pip install django==19
①创建项目mysite,在mysite下创建文件夹static_files,专门用于存放静态文件,并在settingpy文件中配置:
STATCI_ROOT='/home/worker//mysite/static_files'
②收集静态资源
python managepy collectstatic
(空项目中只会收集到admin模块的静态文件)
:wq! 保存退出
! 强制退出
x 保存退出
找到nginxconf文件:
编辑nginxconf配置文件
找到>
以上就是关于使用 Docker 部署 Nginx + Uwsgi全部的内容,包括:使用 Docker 部署 Nginx + Uwsgi、uwsgi -- no python application found、uwsgi+nginx反向代理项目部署等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)