linux中部署python項目

參考這篇博客:
https://blog.csdn.net/smilehappiness/article/details/117337943

1.首先查看python的版本:
python -V

2.安裝python:
3.安裝虛擬環境
報錯1:

 解決辦法:export CURL_CA_BUNDLE="/etc/pki/tls/certs/ca-bundle.crt"

https://3ms.huawei.com/km/blogs/details/14442367
https://3ms.huawei.com/km/groups/2032579/blogs/details/8264445

 

報錯2:

解決辦法:在命令後面指定url
https://3ms.huawei.com/km/blogs/details/11041183

最終執行成功的界面:
pip3 install virtualenv --trusted-host mirrors.tools.huawei.com -i http://mirrors.tools.huawei.com/pypi/simple

 

4 爲項目創建虛擬環境
virtualenv /data/workflow_test/python_venv

5
切換到虛擬環境所在的目錄
cd /data/workflow_test/python_venv

6 啓用虛擬環境
執行命令:source ./bin/activate (deactivate是關閉虛擬環境)

7安裝依賴清單裏的庫
這個依賴庫要從本地獲取:在local項目中執行pip3 freeze >requirements.txt,就可以導出本地項目中所有的依賴
執行命令: pip3 install -r /data/workflow_test/python_venv/requirements.txt --trusted-host mirrors.tools.huawei.com -i http://mirrors.tools.huawei.com/pypi/simple

8 列出當前虛擬環境所安裝的依賴庫
執行命令: pip3 list

9 啓動python服務

在虛擬環境中進入項目中

使用以下命令,啓動python服務:
nohup python workflow_api.py

10 linux中部署的python項目 找不到文件夾  No module named

解決方法參考:https://blog.csdn.net/lovetechlovelife/article/details/114991432
這種情況下的話,我們就需要讓Python解釋器知道我們的項目根目錄(或者說根module)的位置,才能讓程序正確地執行。

具體的操作就是,在環境變量配置文件中配置PYTHONPATH(比如,我們的項目在Linux上的位置爲:/data/workflow_test/workflow):

編輯環境變量配置文件: vim ~/.bash_profile
在文件末尾追加如下兩行,並保存:
# 注意這裏是Python項目根目錄的上一級目錄
export PYTHONPATH=/data/workflow_test/workflow
退出保存:qw

使配置立即生效:source ~/.bash_profile
通過上面的配置之後,再執行此項目下的.py文件就可以正常運行了。

11 查看已經運行的python服務:

 ps -ef|grep python

 12 

項目中存在能ping通IP地址,但是打不開web應用程序,這時需要測試端口能否ping通。

 

13 

telnet測試遠程5000端口連接失敗,可能是因爲以下原因之一:

1. 確認遠程服務器是否已經開啓了5000端口,並且允許外部訪問。

2. 確認本地網絡是否存在防火牆或者網絡代理,可能會導致連接失敗,需要將其關閉或者設置允許訪問。

通過以下命令可以查看目標機器的5000端口是否開啓: ``` netstat -l | grep 5000 ```

如果沒有開啓,可以使用以下命令開啓: ``` systemctl start sshd ```

這將啓動遠程登錄服務,並開啓5000端口。

要確保目標Linux主機開啓了5000端口,可以使用以下命令: ```netstat -tuln | grep 5000 ```

 

14 

flask api在遠程服務器啓動後 Running on http://127.0.0.1:5000
沒法訪問的問題

https://blog.csdn.net/xys2333/article/details/109027041

 啓動成功後截圖:

 

15 postman進行端口測試的時候繼續報錯,項目中用的是sqlite3的數據庫

 解決辦法:確保您的flask應用程序有權限寫入數據庫文件。可以使用chmod命令更改文件權限,例如:`chmod 777 your_database_file.db`。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章