在Ubuntu上部署Python應用的流程大致可以分為以下幾個步驟:
sudo apt update
sudo apt upgrade -y
python3 --version
sudo apt install python3.x
sudo apt install python3-pip
為了避免全局安裝Python包和依賴,建議使用虛擬環境:
python3 -m venv myenv
source myenv/bin/activate
在項目目錄中,使用requirements.txt文件安裝所有依賴:
pip install -r requirements.txt
python app.py
使用Nginx作為反向代理服務器,將外部請求轉發到Python應用:
sudo apt install nginx
/etc/nginx/sites-available/default,添加以下內容:server {
listen 80;
server_name your_domain_or_ip;
location / {
proxy_pass http://127.0.0.1:5000;
}
}
sudo systemctl restart nginx
為了確保應用在系統重啟后自動啟動,可以創建一個systemd服務文件:
sudo nano /etc/systemd/system/python-app.service
添加以下內容:
[Unit]
Description=Python Application
After=network.target
[Service]
User=your_user
Group=your_group
WorkingDirectory=/path/to/your/app
ExecStart=/path/to/your/app/myenv/bin/python /path/to/your/app/app.py
Restart=always
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl start python-app.service
sudo systemctl enable python-app.service
如果服務器啟用了防火墻(如UFW),確保允許HTTP(80端口)和應用使用的端口通過防火墻:
sudo ufw allow 80
sudo ufw allow 5000
在瀏覽器中訪問你的服務器IP和應用端口,確認應用是否正常運行。
以上步驟提供了一個基本的Python應用部署流程,具體應用時可能需要根據實際項目需求進行調整。