Alibaba Cloud サーバーに Flask をデプロイする簡単な方法

Alibaba Cloud サーバーに Flask インターフェイスをデプロイし、パブリック ネットワーク アクセスを実現する方法を記録します。

1 はじめに

ランディング コールのコールバック サービス テストのため、テスト デモを作成する必要があります。これは、コールバック サービスによってデモに送信された http post リクエストを受信し、特定のロジックに従って対応する応答データを返すために使用されます。データ形式はjsonです。インターフェイス コードはローカルで完成しており、LAN 内でのアクセスのセルフテストに合格しています。以下では、このインターフェイスのセットを Alibaba Cloud サーバーに展開し、パブリック ネットワーク アクセスを実現する方法について説明します。

2. Python3環境をデプロイする

Python 3.7 はローカルで使用され、Python3 環境はクラウド サーバーにデプロイされる必要があります。参考リンク:https://blog.csdn.net/u011090984/article/details/130984739

3.requirement.txtを生成する

ローカルの pycharm テスト デモでは、仮想環境で次のステートメントを実行して、requirement.txt を生成します。このドキュメントは、クラウド サーバーに依存ライブラリをインストールするために使用されます。

pip3 freeze > requirement.txt

4. プロジェクトをパッケージ化してアップロードする

rz -e #上传
unzip callbackdemo.zip #解压

上記の callbackdemo.zip は、独自のプロジェクト パッケージ名に置き換えることができます。

5. 依存ライブラリをインストールする

プロジェクト ディレクトリを入力し、実行可能 py ファイルにアクセス許可を付与します。

chmod +x aaa.py

依存ライブラリをインストールします。

pip3 install -r requirement.txt

実行が完了すると、依存ライブラリがインストールされます。現時点では、インターフェイスにはローカルでのみアクセスできます。私のインターフェイスでは、host='0.0.0.0'、post=5001 です。したがって、Alibaba Cloud セキュリティ グループでポート 5001 を開く必要があります。以下に示すように:
ここに画像の説明を挿入します
ここに画像の説明を挿入します
設定はインバウンドとアウトバウンドの両方の方向で保存され、インスタンスを再起動する必要はなく、リアルタイムで有効になります。

6. ファイアウォールを確認する

セキュリティ グループを構成した後も、サーバー ファイアウォールはポート 5001 をブロックします。したがって、ファイアウォールのステータスを確認してください。

firewall-cmd --state

ここでのデフォルトのステータスは実行されておらず、ファイアウォールも有効になっていないため、ファイアウォールの問題を心配する必要はありません。ファイアウォールがオンになっている場合は、オフにすることを選択するか、次のコマンドを選択して 5001 の受信トラフィックと送信トラフィックを許可するようにファイアウォールを構成します。

firewall-cmd --add-port=5000/tcp --permanent #放行端口
firewall-cmd --reload #重启生效

7. パブリックネットワークからアクセスできるかテストする

クラウド サーバーは、python3 -m main を通じてインターフェイス サービスを開始します。ローカル LAN 上のコンピュータの場合、postman を使用してインターフェイスにアクセスします。インターフェイス アドレスは、クラウド サーバーのパブリック ネットワーク IP + 5001 ポート + ルーティングを使用します。

おすすめ

転載: blog.csdn.net/u011090984/article/details/131001638