在AWS的Linux服務器部署Flask預演(詳細步驟)
我的開發環境是python3.11
以下資料來自對GPT回答的整合:
部署Flask應用程序到AWS Linux服務器,你可以選擇多種方式。下面是一個基本的步驟,這個步驟假設你已經在AWS上設置好了一個EC2 Linux服務器實例并且你有SSH連接到服務器的權限。
1. **SSH連接到你的EC2實例**你可以通過下面的命令連接到你的服務器。在這里,`<your.pem>`是你的私鑰文件,`<user>`是服務器的用戶,通常在Linux上是`ec2-user`或者`ubuntu`,`<public_dns>`是服務器的公共DNS地址。
ssh -i <your.pem> <user>@<public_dns>這里采用了命令方式連接服務器,也可以采用xshell
2. **安裝必要的軟件**你需要Python和pip。你可以通過下面的命令安裝:
sudo yum updatesudo yum install python3 pip3因為我的開發環境是python3.11,所以,各自分別安裝。以下具體的安裝python3.11的方法:
實際上,Python 3.11 可能不會直接包含在你的 Linux 發行版的倉庫中,尤其是如果你使用的是一個較舊或者長期支持(LTS)版本的發行版。你可以使用`yum`檢查可用的Python版本:
sudo yum list | grep python3如果Python 3.11沒有在列表中,你可能需要使用其他方法來安裝它,例如從源碼安裝或使用`pyenv`。假設我們要使用`pyenv`來安裝Python 3.11,你可以按照以下步驟進行:
2.1. 首先,安裝`pyenv`的依賴: sudo yum install -y git gcc zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel xz xz-devel libffi-devel findutils2.2. 然后,安裝`pyenv`:curl https://pyenv.run | bash然后,將以下行添加到`.bashrc`:
export PATH='/home/username/.pyenv/bin:$PATH'eval '$(pyenv init --path)'eval '$(pyenv init -)'eval '$(pyenv virtualenv-init -)'然后,應用更改:
source ~/.bashrc2.3. 現在,你可以安裝Python 3.11:pyenv install 3.11.02.4. 然后,將其設置為全局默認版本:pyenv global 3.11.02.5. 檢查你的Python版本,確認更改已生效:python --version2.6. 現在你可以安裝pip:
python -m ensurepip --upgrade【添加軟連接】
ln -s /usr/local/python3/bin/python3 /usr/bin/python3報錯文件存在,刪除現有鏈接再執行添加軟連接
rm /usr/bin/python3ln -s /usr/local/python3/bin/python3 /usr/bin/python3【添加pip3軟連接】
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3報錯文件存在,直接刪除現有鏈接再創建新鏈接
rm /usr/bin/pip3ln -s /usr/local/python3/bin/pip3 /usr/bin/pip33. **設置Python虛擬環境**【創建站點目錄 】
mkdir /var/www進入目錄
cd /var/www【創建項目目錄】
mkdir mysite你可以使用git來把你的Flask應用從你的代碼庫中拉到服務器上。
git clone <your_repository_link>cd <your_repository_folder>【安裝uwsgi】(在虛擬環境中安裝)
pip3 install uwsgi使用Python虛擬環境是一個好習慣,它可以防止你的Python庫在不同項目間相互沖突。你可以用下面的命令創建和激活虛擬環境:
python3 -m venv venvsource venv/bin/activate【虛擬環境下安裝Flask 】
pip3 install flask4. **在你的服務器上克隆你的Flask應用**你可以使用git來把你的Flask應用從你的代碼庫中拉到服務器上
git clone <your_repository_link>cd <your_repository_folder>5. **安裝你的Flask應用的依賴**你應該在你的Flask應用的根目錄下有一個`requirements.txt`文件,這個文件列出了你的應用所有的依賴。你可以用下面的命令安裝所有依賴:
pip3 install -r requirements.txt6. **運行你的Flask應用**現在你可以運行你的Flask應用了。默認的Flask命令是:
flask run這樣做只會在你的服務器的本地運行你的應用,要讓你的應用可以被公網訪問,你可以設置`host`參數為`0.0.0.0`:
flask run --host=0.0.0.0【更改訪問】
python app.py runserver -h 0.0.0.0 -p 5000 -d需要把上述的運行設置成后臺運行,否則關閉了虛擬環境窗口,瀏覽器就不能訪問了
python?app.py??runserver?-h?0.0.0.0?5000?-d?&注意你應該在AWS的安全組設置中打開你的Flask應用監聽的端口,否則你的應用是無法被訪問的。
這只是最基本的設置,生產環境中你可能需要更復雜的設置,例如使用Nginx做反向代理,使用Gunicorn作為WSGI服務器,以及設置環境變量等等。以上步驟可以作為你的起點,然后你可以根據你的需求進行調整和優化。
【其他命令】
切換到root用戶
sudo -s刪除文件夾
rm -rf 文件夾??查文件、文件夾
find /. -name 'Python-3.9*' -type d創建虛擬環境(在站點中)
python3 -m venv venv進入虛擬環境
cd venv/bin/source activate離開虛擬環境
deactivate到此這篇關于在AWS的Linux服務器部署Flask預演的文章就介紹到這了,更多相關Linux服務器部署Flask內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
