宝塔面板部署网站
			宝塔面板部署Django项目教程一:
操作教程(一):宝塔布署Django项目 (python管理器+uwsgi+nginx)_宝塔部署django项目-CSDN博客
下面记载我遇到的问题:
问题1:端口占用
终端报错:
1  | Django-Error: That port is already in use  | 
solution:
假设我们使用的端口是8898
查看正在使用的端口 8898
1  | lsof -i:8898  | 
然后展示正在使用的端口
解除端口占用:
1  | kill -9 8898  | 
问题2:“requirements.txt“ 文件生成和使用
requirements.txt 是一个文本文件,列出了所有必须安装的库,以便于在新环境中复制相同的设置。它通常包括库的名称和版本号。
生成requirements.txt:(在启动程序同级目录)
1  | pip freeze > requirements.txt  | 
在新环境部署项目时,您可以使用 requirements.txt 文件轻松安装所有依赖项。只需运行:
1  | pip install -r requirements.txt  | 
问题3:保持虚拟环境下的项目后台运行
方法 1:使用 nohup(简单推荐)
1  | nohup python manage.py runserver 0.0.0.0:8000 > system.log 2>&1 &  | 
nohup会忽略SIGHUP信号,即使关闭终端进程也会继续运行。- 日志会持续写入 
system.log。 
方法 2:使用 tmux 或 screen(适合复杂操作)
1  | tmux new -s django_server # 新建会话  | 
- 随时可以重新连接:
tmux attach -t django_server。 
方法 3:系统服务(生产环境推荐)
对于生产环境,建议用 systemd 或 supervisord 托管(示例 systemd 配置):
1  | # /etc/systemd/system/django.service  | 
然后运行:
1  | sudo systemctl start django  | 
如何停止后台进程?
如果已经用 nohup 或 & 运行:
- 查找进程 ID:
1
ps aux | grep 'manage.py runserver'
 - 终止进程:
1
kill -9 <PID>
 
关键区别
| 方式 | 关闭终端后 | 适合场景 | 需要额外工具 | 
|---|---|---|---|
| 直接运行 ❌ 终止 | 临时开发 | 无 | |
nohup       ✅ 保持 | 
短期运行 | 无 | |
tmux/screen ✅ 保持 | 
开发调试 | 需安装 | |
systemd     ✅ 保持 | 
生产环境 | 需 root 权限 | 
建议开发时用 nohup 或 tmux,生产环境用 systemd。
- 标题: 宝塔面板部署网站
 - 作者: Cealivanus Kwan
 - 创建于 : 2025-04-30 09:14:27
 - 更新于 : 2025-04-30 09:37:21
 - 链接: https://redefine.ohevan.com/2025/04/30/宝塔面板部署网站/
 - 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。