Django项目打包
项目配置
1.修改settings
2.配置uwsgi
第一步: 安装uWSGI模块,其他安装方法见uWSGI安装手册
pip install uwsgi
第二步: 在项目根目录下创建uWSGI配置文件(uwsgi.ini
),并编写配置信息,详情见uWSGI配置文档
[uwsgi]
# 使用http协议时,用于直接公开服务
# 使用socket协议时,用于Nginx代理服务
# http=0.0.0.0:8000
socket=0.0.0.0:8000
# 指定项目在生产服务器上的绝对路径
chdir=%d
# 指定Django项目使用的wsgi
module=project.wsgi:application
# 配置进程、线程和缓冲区大小
process=4
threads=2
buffer-size=65536
master=True
# 进程号
pidfile=/tmp/%c.pid
vacuum=True
max-requests=5000
# 日志文件
daemonize=/var/log/uwsgi/%c.log
3.生成requirements
pip freeze > requirements.txt
项目打包
&.Docker部署
第一步:在项目根目录下创建Dockerfile文件,并在Dockerfile文件中编写镜像配置。
# 导入基础景象
FROM python:3.9.13
# 镜像作者信息
MAINTAINER SwordITC sworditc@163.com
# 使用root用户
#USER root
# 创建Django项目目录
RUN mkdir /usr/src/<project_name>
# 将本机当前目录下的所有文件都拷贝到镜像中的指定目录中
COPY . /usr/src/<project_name>
# 将Django项目根目录设定为工作目录
WORKDIR /usr/src/<project_name>
# 在镜像中安装Django项目所需的依赖
RUN python -m pip install --upgrade pip
RUN pip install -r requirements.txt
# 开放容器的端口,允许外部链接该端口
EXPOSE 8000
# 启动命令
CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]
第二步:构建Docker镜像,构建前需在本机安装Docker,安装方法见Docker官网
docker image build [-f <path>/Dockerfile] -t <镜像名>:<版本号> .
第二步:测试Docker镜像,即运行一下镜像,看看是否能正常使用
docker run --name <容器名> -p <本机端口>:<镜像开放的端口> -d <镜像名>:<版本号>
第三步:发布Docker镜像,发布前需要先拥有镜像仓库的账号(公司项目有私有仓库,不要使用开源仓库)
# 登陆镜像仓库
docker login -u <username> -p <password>
# 向镜像仓库发布镜像
docker push <作者名>/<镜像名>:<版本号>
&.传统方式部署
第一步:在项目根目录下创建start.sh启动脚本,并编写启动配置
#!/usr/bin/env bash
uwsgi --ini uwsgi.ini