宝塔快速部署Django项目
首先,我的项目结构如下:
由于是vue项目,所以静态文件在/appfront/dist/static
第一步:安装python项目管理器
宝塔面板的软件商店搜python,见图。
第二步:安装python
django需要python3.x,如果已有,直接下一步。在刚才安装的python项目管理器中安装python(推荐国内节点)。
第三步:导出项目包到requirments.txt
一定要执行这一步,否则后续步骤无法顺利进行
在本地项目下执行如下命令:
pip3 freeze > requirements.txt
更改settings.py中对应内容如下:
ALLOWED_HOSTS = ['*']
STATIC_URL = '/static/'
#根据自己的实际情况更改静态文件路径
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "appfront/dist/static"),
]
第四步:上传本地项目到服务器
上传本地项目到 /data/wwwroot/ 目录下
试着跑一下python3 manage.py runserver,浏览器访问一下生成的网站,没问题的话继续下面的步骤。
第五步:安装Nginx
第六步:项目管理器添加项目
项目名称自己填一下
路径是manage.py所在路径,即项目路径
python版本选刚才装的那个
框架这边先选python(不要选Django,选python后面会自动生成一个uwsgi.ini)
启动方式uwsgi
启动文件选wsgi.py的绝对路径
端口切记要在云服务器控制台放行端口,同时宝塔也要放行
时间较长1分钟左右
完成后,会自动在项目下生成一个uwsg.ini
可以看一下配置
管理器默认使用pip安装项目根目录requirements.txt内的模块,如有其他模块需要安装请手动进入虚拟环境安装
进入虚拟环境方法:
在命令行输入 source 项目路径/项目名_venv/bin/activate
如:source /data/wwwroot/myproject1/school_venv/bin/activate
(我的项目名叫school,所以自动生成一个school_venv虚拟环境)
第七步:映射域名
点击映射,有域名填域名,没有域名的话填IP地址(我已经完成映射,所以才会显示取消映射)
浏览器输入自己的IP或者域名,可以看到如下所示,因为我们还没有配置静态文件(见步骤八)
第八步:配置站点
上一步映射完成后,会自动在面板右侧网站中生成一个站点
点击设置–>反向代理–>配置文件,添加如图红框中代码
静态文件路径,根据自己的项目而定,前面也说过最后,最后,最后,切记一定要重新启动一下python项目
好啦,重新进一下浏览器刷新一下IP或者域名,是不是很激动呢?