宝塔面板部署网站

宝塔面板部署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 进行许可。