Centos
source venv/bin/activate 在 CentOS 上沒有返回任何東西
我正在嘗試在 CentOS 上部署 Python Flask 應用程序(用於 API 端點)以進行工作,但我遵循的每個線上指南都不適合我!
python3 -m venv APIenv
環境已成功創建,但隨後嘗試啟動它:
源 APIenv/bin/啟動
什麼都不返回,既不是錯誤也不是啟動它!
據我了解,啟動它應該使 CLI 看起來像這樣:
(venv) $ _
我還有一個問題:
pip3 安裝 firebase_admin
這有效並且已安裝,但隨後執行我的應用程序:
python3 應用程序.py
回溯(最後一次呼叫):文件“app.py”,第 4 行,在 import firebase_admin ModuleNotFoundError:沒有名為“firebase_admin”的模組
我遵循的每個線上指南都讓我卡在這裡,我真的需要讓它工作,我做錯了什麼?
可能您將 pip3 連結到另一個版本的 python(3.6、3.8 等)而不是您正在使用的 python3
確保您使用的是相同的版本,並且它在 venv 實際上檢查 python3
# python3 -V Python 3.8.6 # which python3 /tmp/APIenv/bin/python3 # ls -laht /tmp/APIenv/bin/python3 lrwxrwxrwx 1 root root 8 Sep 30 13:59 /tmp/APIenv/bin/python3 -> python38
檢查 pip3
# pip3 -V pip 19.3.1 from /tmp/APIenv/lib64/python3.8/site-packages/pip (python 3.8) # which pip3 /tmp/APIenv/bin/pip3 # ls -laht /tmp/APIenv/bin/pip3 -rwxr-xr-x 1 root root 225 Sep 30 13:59 /tmp/APIenv/bin/pip3
有時即使在 VENV 下也可能看起來如此:
# which python38 /tmp/APIenv/bin/python38 # ls -laht /tmp/APIenv/bin/python38 lrwxrwxrwx 1 root root 17 Sep 30 13:59 /tmp/APIenv/bin/python38 -> /usr/bin/python38
然後檢查您的 pip 和 python 解釋器的路徑,以確保您可以通過 venv 的絕對路徑使用它
更新:
與python3.6版本相關的問題。
python3.6版本無法安裝firebase_admin
至少需要python3.8(3.7未測試)
Centos 8 和相關問題模組的 Python38 安裝:
dnf install python38 python38-pip pip38 install firebase_admin flask venv