在 Ubuntu 22.04 上安装宝塔面板(Baota Panel)并配置 Python 和 Django 环境,通常分为三个主要阶段:系统基础准备、宝塔面板安装、以及在宝塔中部署 Python/Django 项目。
以下是详细的操作步骤:
第一阶段:系统基础准备
在开始安装宝塔之前,建议先更新系统源并安装必要的依赖工具。打开终端执行以下命令:
# 更新软件包列表
sudo apt update && sudo apt upgrade -y
# 安装基础工具(如 git, curl, wget 等)
sudo apt install -y git curl wget vim unzip
注意:Ubuntu 22.04 默认使用
snap安装部分服务,但宝塔推荐直接使用官方脚本安装,以避免版本冲突。
第二阶段:安装宝塔面板 (BT-Panel)
目前宝塔面板主要有两个版本:Linux 版(推荐用于服务器后端管理)和 Nginx/Apache 版(功能类似)。对于 Python/Django 开发,我们使用标准的 Linux 面板版本。
-
运行安装脚本:
在终端中复制并粘贴以下命令(这是宝塔官方的标准安装指令):# 安装宝塔面板 (专业版/企业版/免费版均可,此处以通用脚本为例) wget -O install.sh https://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh ed8484bec注:
ed8484bec是宝塔的随机验证码,每次运行可能不同,如果报错请重新获取最新脚本链接。 -
等待安装完成:
脚本会自动安装 Nginx、MySQL、PHP 等基础组件。安装过程中会提示输入安全登录地址。 -
记录登录信息:
安装完成后,终端会显示如下关键信息(请务必截图或记录):- 面板地址:
http://<你的服务器IP>:8888/<随机字符串> - 用户名:
root - 密码:
xxxxxxxx
- 面板地址:
-
登录面板:
在浏览器中输入上述地址,使用 root 账号和密码登录。首次登录可能会要求修改初始密码。
第三阶段:在宝塔中安装 Python 环境
宝塔面板内置了强大的软件商店,可以一键安装不同版本的 Python。
-
进入软件商店:
登录宝塔面板后,点击左侧菜单栏的 【软件商店】。 -
搜索并安装 Python:
- 在搜索框输入
Python。 - 找到 Python 插件(通常显示为 "Python" 或 "Python Environment")。
- 点击右侧的 【安装】 按钮。
- 选择版本:在安装界面,你可以选择 Python 版本(推荐 Python 3.9 或 Python 3.10,Django 4.x+ 在这些版本上运行最稳定)。
- 点击确认,等待安装完成。
提示:宝塔通常会同时安装对应的
pip和virtualenv工具。 - 在搜索框输入
-
验证安装:
安装成功后,你可以在左侧菜单的 【文件】 -> 【网站】 或者通过 SSH 连接服务器验证。
在终端输入:python3 --version pip3 --version
第四阶段:部署 Django 项目
假设你已经有一个本地的 Django 项目代码,可以通过以下方式上传并运行。
方法 A:使用宝塔自带的“项目管理” (推荐新手)
-
在宝塔左侧菜单点击 【网站】 -> 【添加网站】(如果需要独立域名)或直接点击左侧菜单的 【项目管理】(如果有此模块,部分新版宝塔集成在“宝塔应用市场”中)。
- 更通用的方式是直接操作文件。
-
创建项目目录:
- 点击左侧 【文件】。
- 进入
/www/wwwroot目录。 - 新建一个文件夹,例如
my_django_project。
-
上传代码:
- 将你的本地 Django 项目代码(包含
manage.py,requirements.txt,settings.py等)打包成.zip。 - 在宝塔文件管理器中,右键点击新文件夹 -> 【上传】 -> 上传压缩包。
- 解压该压缩包。
- 将你的本地 Django 项目代码(包含
-
创建虚拟环境并安装依赖:
- 在宝塔左侧菜单点击 【终端】(或直接在文件管理器中右键文件夹选择“终端”)。
- 进入项目目录:
cd /www/wwwroot/my_django_project - 创建虚拟环境(假设刚才安装了 Python 3.10):
python3.10 -m venv venv source venv/bin/activate - 安装依赖:
pip install -r requirements.txt(如果没有
requirements.txt,请手动安装 django:pip install django)
-
生成静态文件与迁移数据库:
python manage.py collectstatic --noinput python manage.py migrate -
启动 Django (生产环境):
宝塔通常推荐使用 Supervisor 来管理进程,确保服务开机自启且崩溃自动重启。- 点击左侧菜单 【计划任务】 -> 【添加任务】 (类型选 Shell)。
- 或者更推荐的方式是使用宝塔的 PM2 或 Supervisor 插件:
- 去【软件商店】安装 Supervisor。
- 安装后,在左侧菜单出现 【Supervisor】 选项。
- 点击 【添加守护进程】。
- 填写配置:
- 名称:
django_app - 工作目录:
/www/wwwroot/my_django_project - 启动命令:
/www/wwwroot/my_django_project/venv/bin/python manage.py runserver 0.0.0.0:8000(如果是 Gunicorn 则用 gunicorn 命令,见下文优化建议) - 守护进程: 勾选
- 环境变量: 可填入
DJANGO_SETTINGS_MODULE=your_project.settings
- 名称:
- 点击保存并启动。
方法 B:使用 Gunicorn + Nginx (生产环境最佳实践)
Django 自带的 runserver 仅用于开发,生产环境必须使用 WSGI 服务器。
-
安装 Gunicorn:
在虚拟环境中安装:pip install gunicorn -
配置 Supervisor:
参考上面的步骤,将启动命令改为:/www/wwwroot/my_django_project/venv/bin/gunicorn my_project.wsgi:application --bind 0.0.0.0:8000 --workers 3(注意:将
my_project替换为你实际的项目名,即包含wsgi.py的那个文件夹名) -
配置 Nginx 反向X_X:
- 在宝塔 【网站】 中添加站点(绑定域名)。
- 进入该站点的 【设置】 -> 【配置文件】。
- 在
location / { ... }块中,添加以下配置指向 Gunicorn:location / { proxy_pass http://127.0.0.1:8000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } - 保存并重载 Nginx。
常见问题排查
- 权限问题:如果上传文件后无法读取,请在文件管理器中右键文件夹 -> 【权限】,所有者设为
www,权限设为755。 - 端口占用:确保
8000或其他自定义端口未被占用,可以在宝塔 【安全】 页面放行对应端口。 - Debug 模式:生产环境务必在
settings.py中将DEBUG = False,否则敏感信息会泄露。
按照以上步骤,你就可以在 Ubuntu 22.04 的宝塔面板上成功运行 Django 项目了。
轻量云Cloud