Python Flask应用部署香港VPS全步骤指南
文章分类:更新公告 /
创建时间:2025-10-26
在数字化项目运营中,将Python Flask应用部署到香港VPS能显著提升亚太地区用户的访问速度,同时依托稳定的服务器环境保障应用持续运行。本文从基础准备到最终上线,逐一拆解关键步骤,帮助开发者快速掌握部署技巧。
部署前的核心准备
启动部署前需确认三项基础条件:首先是一台香港VPS,建议选择Ubuntu 20.04或22.04 LTS系统(长期支持版稳定性更佳);其次本地需安装Git(代码管理工具)和Python 3.8+环境;最后确保已完成Flask应用开发,包含可运行的主程序(通常命名为app.py)及依赖清单(requirements.txt)。
代码托管与VPS连接
将本地代码提交至GitHub等托管平台是关键一步。在项目根目录打开终端,依次执行:
git init
git add .
git commit -m "Initial commit"
git remote add origin 你的GitHub仓库地址
git push -u origin main
完成代码托管后,通过SSH连接香港VPS。本地终端输入命令:
ssh root@你的VPS公网IP输入登录密码(或使用密钥认证更安全)即可进入VPS控制台。
环境搭建与代码拉取
登录VPS后需安装必要软件。以Ubuntu为例执行:
sudo apt update && sudo apt install -y python3 python3-pip git nginx
安装完成后,通过`git clone 你的GitHub仓库地址`将代码拉取到VPS,进入项目目录后创建虚拟环境隔离依赖:
python3 -m venv venv
source venv/bin/activate # 激活虚拟环境
pip install -r requirements.txt # 安装项目依赖
配置Gunicorn运行服务
Gunicorn(Python WSGI服务器)用于实际运行Flask应用。在虚拟环境中安装:
pip install gunicorn接下来创建系统服务文件管理Gunicorn进程。使用`sudo nano /etc/systemd/system/gunicorn.service`打开编辑器,输入以下内容(注意替换项目目录路径):
[Unit]
Description=Gunicorn service for Flask app
After=network.target
[Service]
User=root
Group=www-data
WorkingDirectory=/root/你的项目目录
Environment="PATH=/root/你的项目目录/venv/bin"
ExecStart=/root/你的项目目录/venv/bin/gunicorn -w 3 -b 0.0.0.0:8000 app:app
[Install]
WantedBy=multi-user.target
其中`-w 3`表示启动3个工作进程,可根据VPS核心数调整(通常为CPU核心数+1)。保存后执行`sudo systemctl start gunicorn`启动服务,`sudo systemctl enable gunicorn`设置开机自启。
Nginx反向代理配置
Nginx作为反向代理服务器,负责接收用户请求并转发至Gunicorn。创建配置文件:
sudo nano /etc/nginx/sites-available/flask_app输入以下内容(替换域名或IP):
server {
listen 80;
server_name 你的域名或VPS公网IP;
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;
}
}
保存后创建软链接启用配置:
sudo ln -s /etc/nginx/sites-available/flask_app /etc/nginx/sites-enabled/通过`sudo nginx -t`检查配置有效性,无误后重启Nginx:
sudo systemctl restart nginx域名绑定与最终验证
登录域名注册商控制台,添加A记录将域名指向VPS公网IP(需等待10-30分钟DNS解析生效)。解析完成后,在浏览器输入域名即可访问部署的Flask应用。若出现“502 Bad Gateway”,可通过`journalctl -u gunicorn`查看Gunicorn日志排查问题。
整个部署过程需注意路径配置的准确性,尤其是虚拟环境路径和项目目录的填写。香港VPS凭借地理优势,能有效降低内地用户访问延迟,配合规范的部署流程,可确保Flask应用稳定高效运行。
上一篇: 云服务器相关面试题解析:网站架构设计视角
工信部备案:苏ICP备2025168537号-1