每次部署 Django 项目都抓狂,求正确姿势

2018-08-20 20:40:28 +08:00
 sayhier

个人练手用的小项目,用的是 Django 的后端和 Bootstrap 前端,部署用 gunicorn + suervisor + nginx 在 ubuntu 下,每次搞一堆配置文件都不顺利,究其原因还是对原理不够了解,求详细解读,或求推荐其他的部署方案。

5190 次点击
所在节点    Python
24 条回复
0xABCD
2018-08-20 20:44:41 +08:00
把报错信息贴出来,大家一起帮你看看。
tanglangshan
2018-08-20 20:47:53 +08:00
docker 就是解决这个问题的
vakara
2018-08-20 20:53:06 +08:00
docker 可以帮你解决这些问题。
pepesii
2018-08-20 20:53:30 +08:00
你写个 bash shell,或者 ansible,以后就一样的了
Cbdy
2018-08-20 21:10:44 +08:00
我一度认为,Docker 就是为 Python 而发明的技术
chengxiao
2018-08-20 23:38:48 +08:00
感觉就第一次部署有难度吧,后面熟了直接把配置文件 uwsgi 和 nginx 的配置文件路径参数一改就行了
dcalsky
2018-08-21 00:06:57 +08:00
练手小项目直接 python ./manage.py runserver 0.0.0.0:8000 够用。等你多了解了一个 wsgi,再用 uwsgi, gunicorn 之类的 web server.
julyclyde
2018-08-21 06:33:32 +08:00
如果你把文件拷贝过去不能运行,用了 docker 也照样不能运行
kios
2018-08-21 08:02:22 +08:00
docker~
lihongjie0209
2018-08-21 09:12:40 +08:00
换个语言喽, 用 docker 有必要吗?
nimdanoob
2018-08-21 10:11:52 +08:00
docker 了解一下
tt67wq
2018-08-21 10:20:41 +08:00
docker swarm
zhengxiaowai
2018-08-21 10:37:07 +08:00
Django 部署很简单啊,官网文档都有,另外写个 makefile。。。反正我这个 makefile 用了 2 年了。。
chengxiao
2018-08-21 10:55:42 +08:00
感觉就是楼主要分清楚 Nginx gunicorn suervisor 这三个都是负责干嘛的
一上来可以先不用 suervisor 这东西主要负责进程管理 快速重启和启动 gunicorn 和 nginx 的
搞清楚 nginx 和 gunicorn 或者 uwsgi 的关系 基本就能理清楚和排查错误了
scriptB0y
2018-08-21 10:56:08 +08:00
asuraa
2018-08-21 11:15:57 +08:00
我用的 dokku 部署的 也即是 heroke 每次部署只需要 push 一下就行了
xanthu
2018-08-21 11:23:10 +08:00
1.你可以试试 cookiecutter-django,命令行自动生成配置好的项目,也可以自己写 cookiecutter


2.建议开发环境和部署环境分开,可以继承 Configuration,写配置类,我一般是一个通常配置文件,一个开发配置文件,一个部署配置文件...然后每次只要在 manage.py 里指定下环境变量就可以了。


3.Pycharm 直接连接 docker 环境进行开发


有段时间没用 Django 开发了,可能有说错的地方....
sayhier
2018-08-21 13:13:34 +08:00
看来推荐 docker 的多
herozhang
2018-08-21 13:18:09 +08:00
用 docker 吧
warcraft1236
2018-08-21 13:21:35 +08:00
为啥不用 uwsgi 呢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/481580

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX