以下是在CentOS上部署Python项目的核心步骤,涵盖环境准备、依赖管理、服务配置等关键环节:
一、基础环境准备
-
安装Python
- 使用YUM安装Python 3:
sudo yum update -y sudo yum install python3 python3-pip -y # 安装Python 3及pip python3 --version # 验证安装
- 使用YUM安装Python 3:
-
创建虚拟环境(隔离依赖)
python3 -m venv myenv # 创建虚拟环境 source myenv/bin/activate # 激活环境
二、部署项目依赖
-
安装项目依赖包
- 通过
requirements.txt安装:pip install -r requirements.txt
- 通过
-
处理系统级依赖
- 若依赖库需要系统库(如
libffi-devel),用YUM安装:sudo yum install libffi-devel openssl-devel -y
- 若依赖库需要系统库(如
三、运行项目
-
直接运行(开发环境)
python app.py # 替换为项目入口文件 -
使用WSGI服务器(生产环境)
- 以Gunicorn为例:
pip install gunicorn gunicorn -w 4 -b 0.0.0.0:8000 app:app # 绑定端口,启动服务
- 以Gunicorn为例:
四、配置系统服务(可选)
- 创建
systemd服务文件(如/etc/systemd/system/myapp.service):[Unit] Description=My Python App After=network.target [Service] User=your_user WorkingDirectory=/path/to/app ExecStart=/path/to/app/venv/bin/gunicorn -b 0.0.0.0:8000 app:app Restart=always [Install] WantedBy=multi-user.target - 启用并启动服务:
sudo systemctl daemon-reload sudo systemctl start myapp sudo systemctl enable myapp
五、开放网络访问
- 配置防火墙放行端口(如8000):
sudo firewall-cmd --permanent --add-port=8000/tcp sudo firewall-cmd --reload
六、进阶部署(可选)
-
Docker部署:
- 编写
Dockerfile:FROM python:3.9-slim WORKDIR /app COPY requirements.txt . RUN pip install -r requirements.txt COPY . . CMD ["python", "app.py"] - 构建并运行容器:
docker build -t myapp . docker run -d -p 8000:8000 myapp
- 编写
-
反向代理(Nginx):
配置Nginx代理请求到Gunicorn服务,提升安全性和负载能力。
注意事项
- 生产环境务必使用虚拟环境隔离依赖。
- 定期更新依赖包(
pip list --outdated)以修复安全漏洞。 - 敏感信息(如数据库密码)通过环境变量管理,避免硬编码。
以上步骤参考自,可根据项目需求选择合适方案。