Ubuntu搭建Python Web开发环境详细步骤
1. 准备基础环境
首先更新系统软件包列表,确保后续安装的软件版本最新:
sudo apt update
2. 安装Python与pip
Ubuntu 22.04及以上版本默认预装Python 3.10+,但仍需确认并安装pip(Python包管理器):
sudo apt install python3 python3-pip python3-venv
验证安装是否成功:
python3 --version # 查看Python版本(如3.10.12)
pip3 --version # 查看pip版本(如23.3.1)
3. 创建虚拟环境(隔离项目依赖)
虚拟环境可避免不同项目间的依赖冲突,推荐为每个项目单独创建:
# 在项目目录下创建虚拟环境(如命名为"myenv")
python3 -m venv myenv
# 激活虚拟环境(激活后终端提示符会显示环境名)
source myenv/bin/activate
# 激活后,后续安装的包会存放在虚拟环境中,不影响全局Python环境
4. 安装Web框架
根据项目需求选择轻量级(Flask)或全功能(Django)框架:
① 安装Flask(适合小型API或轻量级应用)
pip install Flask
创建一个简单的Flask应用(app.py):
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
return 'Hello, Flask World!'
if __name__ == '__main__':
app.run(debug=True, host='0.0.0.0', port=5000)
运行应用:
python app.py
访问http://<服务器IP>:5000,若看到"Hello, Flask World!"则说明成功。
② 安装Django(适合复杂Web应用,自带ORM、Admin等功能)
pip install Django
创建Django项目与应用:
# 创建项目目录(如"myproject")
django-admin startproject myproject
cd myproject
# 创建应用(如"myapp")
python manage.py startapp myapp
# 注册应用(修改myproject/settings.py,将"myapp"添加到INSTALLED_APPS列表)
运行开发服务器:
python manage.py runserver
访问http://<服务器IP>:8000,若看到Django欢迎页面则说明成功。
5. 配置生产环境(可选但推荐)
开发环境仅用于调试,生产环境需用**Nginx(反向代理)+ uWSGI(应用服务器)**提升性能与安全性。
① 安装Nginx
sudo apt install nginx
启动Nginx并设置开机自启:
sudo systemctl start nginx
sudo systemctl enable nginx
② 配置uWSGI(连接Python应用与Nginx)
安装uWSGI:
pip install uwsgi
创建uWSGI配置文件(如myapp_uwsgi.ini,放在项目根目录):
[uwsgi]
module = wsgi:app # Flask应用需指向"wsgi:app"(wsgi.py文件中的app对象);Django应用需指向"myproject.wsgi:application"
master = true
processes = 5 # 进程数(根据服务器配置调整)
socket = myapp.sock # Unix socket文件路径(Nginx将通过此文件通信)
chmod-socket = 660 # socket文件权限
vacuum = true # 退出时清理临时文件
die-on-term = true # 接收SIGTERM信号时正常退出
③ 配置Systemd服务(管理uWSGI进程)
创建Systemd服务文件(如/etc/systemd/system/myapp.service):
[Unit]
Description=uWSGI instance for myapp
After=network.target
[Service]
User=ubuntu # 运行服务的用户(根据实际情况修改)
Group=www-data # 运行服务的组(通常为www-data)
WorkingDirectory=/path/to/your/app # 项目根目录(如/home/ubuntu/myproject)
ExecStart=/path/to/your/app/myenv/bin/uwsgi --ini myapp_uwsgi.ini # 指定虚拟环境中的uwsgi路径
[Install]
WantedBy=multi-user.target
启动并启用服务:
sudo systemctl daemon-reload
sudo systemctl start myapp
sudo systemctl enable myapp
④ 配置Nginx反向代理
编辑Nginx默认配置文件(/etc/nginx/sites-available/default),替换server块内容:
server {
listen 80;
server_name your_domain_or_ip; # 替换为域名(如example.com)或服务器IP
location / {
include uwsgi_params; # 加载uWSGI参数
uwsgi_pass unix:/path/to/your/app/myapp.sock; # 指向uWSGI的socket文件
}
# 可选:配置静态文件服务(Django需额外设置STATIC_ROOT)
location /static/ {
alias /path/to/your/app/static/; # 静态文件目录(需提前收集静态文件)
}
}
测试Nginx配置是否正确:
sudo nginx -t
重启Nginx使配置生效:
sudo systemctl restart nginx
⑤ 防火墙设置(允许HTTP/HTTPS流量)
若服务器开启了UFW防火墙,需允许80(HTTP)和443(HTTPS)端口:
sudo ufw allow 'Nginx Full'
6. 开发工具推荐(可选)
- 代码编辑器:Visual Studio Code(轻量、插件丰富,支持Python、Django等语言提示)、PyCharm(专业Python IDE,提供调试、数据库工具等)。
- 数据库:若项目需要数据库,可安装MySQL(
sudo apt install mysql-server)或PostgreSQL(sudo apt install postgresql postgresql-contrib),并通过框架的ORM(如Django的models.py)或SQLAlchemy(Flask)操作。
通过以上步骤,你已在Ubuntu上搭建好Python Web开发环境,可根据项目需求选择框架并开始开发。生产环境中还需注意定期更新依赖、备份数据、配置HTTPS(如Let’s Encrypt证书)等安全措施。
以上就是关于“Ubuntu Python Web开发环境怎么搭建”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm