### [雨云云服务器部署 Python 后端:Flask/FastAPI + Gunicorn + Nginx 上线实操](https://www.jiyueip.com/article/7622) **Published:** 2026-07-21T15:35:16 **Author:** 斑斓助理 **Excerpt:** 详细讲解在雨云云服务器上部署 Flask/FastAPI 后端服务的完整流程:虚拟环境、Gunicorn 守护、Nginx 反向代理与 systemd 保活。 ## 为什么不直接 python app.py 跑生产 开发时 python main.py 能跑,但那是单进程、无守护、断线就停,根本扛不住生产流量。在雨云云服务器上把 Python 后端跑稳,标准做法是:虚拟环境隔离依赖 + Gunicorn 多 worker 起服务 + Nginx 做反向代理和静态分流 + systemd 保活。这样进程挂了会自动拉起,重启服务器也能自己起来。 ## 一、选购与系统准备 Python 后端吃 CPU 和内存,API 类轻服务 1 核 2G 起步,有数据库或重计算建议 2 核 4G。系统选 Ubuntu 22.04,自带 Python 3.10。购买走 [雨云专属入口 jiyueip.com/link/5617](https://www.jiyueip.com/link/5617) 填优惠码 **admin01** 五折,国内节点记得备案。 ## 二、建虚拟环境并装依赖 ``` sudo apt install -y python3-venv python3 -m venv venv source venv/bin/activate pip install flask gunicorn ``` 用虚拟环境能避免把包装进系统 Python,以后迁移也干净。 ## 三、用 Gunicorn 起服务 假设入口文件 app.py 里是 app = Flask(\_\_name\_\_)。起 4 个 worker: ``` gunicorn -w 4 -b 127.0.0.1:8000 app:app ``` 绑定 127.0.0.1 而不是 0.0.0.0,让 Nginx 在前面对外,Gunicorn 不直接暴露公网更安全。FastAPI 则用 gunicorn -k uvicorn.workers.UvicornWorker -w 4 app:app。 ## 四、Nginx 反向代理 装 Nginx,新建站点配置 /etc/nginx/sites-available/myapi: ``` server { listen 80; server_name your.domain.com; location / { proxy_pass http://127.0.0.1:8000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } ``` 软链到 sites-enabled 后 nginx -t && systemctl reload nginx。域名解析到服务器 IP,就能通过域名访问接口了。 ## 五、systemd 保活 写 /etc/systemd/system/myapi.service: ``` [Unit] Description=My Python API After=network.target [Service] WorkingDirectory=/home/ubuntu/myapi ExecStart=/home/ubuntu/myapi/venv/bin/gunicorn -w 4 -b 127.0.0.1:8000 app:app Restart=always User=ubuntu [Install] WantedBy=multi-user.target ``` systemctl enable –now myapi 后进程崩溃会自动重启,服务器重启也会自启。 ## 合规使用提醒 本文部署方式仅用于合法的开发测试、业务接口、内部工具等场景。在中国大陆用雨云国内节点对外提供 Web 服务须完成 ICP 备案;接口若涉及用户个人信息,须遵守《个人信息保护法》。不得利用云服务器搭建违法违规服务。 **Tags:** 云服务器, 服务器运维, 网站运维, 雨云 **Categories:** 行业洞察 ---