Django开发之使用宝塔面板部署项目
宝塔面板是一款服务器管理软件,其优点在于可以为Linux服务器提供一个web端用户界面,并简化了部分常用功能的操作,从而使部署网站变得更轻松。
下文主要介绍一下使用宝塔面板配合uwsgi和nginx部署Django项目的过程:
1.登录宝塔
这里默认宝塔面板已安装在服务器端,如果这一步有问题那么你需要访问宝塔官网。打开服务器的Terminal,输入以下代码:
/etc/init.d/bt default
即可查看宝塔的登录地址、用户名、密码等信息。为了安全,这些信息都是动态变化的,可以保证只有登录服务器的用户才能登录宝塔面板。
2.安装软件
点击宝塔左侧的“软件商店”,找到“Nginx”和“Python项目管理器”这两个软件并安装。
3.添加站点
点击宝塔左侧的“网站”,点击“添加站点”填写项目信息,域名暂时填写服务器IP地址即可。填好后宝塔会默认将网站项目的文件夹创建于/www/wwwroot/路径下。
4.上传代码
在“网站”页面点击“根目录”进入项目文件夹,删除默认的html页面,点击“上传”,将代码文件打包为压缩包后拖至页面内,点击“开始上传”按钮等待上传。上传完成后将代码解压至项目目录。
5.网站配置
在项目文件夹新建文件uwsgi.ini,输入以下代码后保存:
[uwsgi]
socket=127.0.0.1:8997
chdir=/www/wwwroot/项目文件夹/
wsgi-file=wsgi.py所在目录
processes=4
threads=2
master=True
pidfile=uwsgi.pid
daemonize=uwsgi.log`
其中wsgi.py是Django项目在创建时自动生成的py文件,目录一般为“Django项目名称/wsgi.py”
在“网站”页面点击网站操作栏的“设置”,在弹出窗口中点击“配置文件”,输入以下代码:
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:8997;
uwsgi_param UWSGI_SCRIPT 项目名.wsgi;
uwsgi_param UWSGI_CHDIR /www/wwwroot/项目文件夹/;
}
location /static/ {
alias /www/wwwroot/项目文件夹/static/;
}
6.添加项目
在软件商店里找到下载好的“Python项目管理器”,点击“添加项目”,将启动方式改为uwsgi,启动文件改为前面创建的uwsgi.ini,其他的按实际情况填写即可。
7.虚拟环境
项目管理器会在项目文件夹下自动创建一个虚拟环境,虚拟环境的文件夹以_venv结尾。在服务器的Terminal输入以下代码可进入虚拟环境:
source /www/wwwroot/项目文件夹/虚拟环境文件夹/bin/activate
然后进入项目目录:
cd /www/wwwroot/项目文件夹
在当前目录分两次输入以下两行代码:
pip3 install -r requirements.txt
python manage.py collectstatic
第一行代码是安装项目的依赖文件,第二行代码是收集项目的静态文件。依赖文件的目录“requirements.txt”需要在打包代码之前一并打包进去,项目的静态文件目录需要在项目的settings.py里配置。这两个基本操作不再赘述。
8.启动
最后,在“Python项目管理器”里启动Django项目,在“网站”里启动网站的域名映射,这样,一个Django项目就部署完成了。对于Linux新手而言,这种部署方式避免了大量的Linux命令的输入,宝塔面板也能为服务器提供基本的运维功能。不过需要注意的是,这种部署方式不适合带有socket功能的项目。