展開するクラウドアリの私達のフラスコのApp(2)

背面に接続されているブック。

こうした一見安価で必要不可欠な事項の安全性を確保するために、練習の過程を通じて展開とは何の関係が、すべてを持っていないものの、ファイアウォール、としてアリクラウド上で共有いくつかの基本的な設定、オン。

我々のアプリケーションのデプロイ

最初の私たちのコードがLinuxサーバ上の多くの方法を持っているために押されて、私はgitの管理やscpコマンドを使用していたことは明らかでなければなりません。gitの方法は、ここでは非常に一般的であると言うことではない、SCPは、一般的にSCPを使用して、Linuxシステムのコマンドのsshリモートコピーをベースに、あなたはgitの管理をバイパスすることができ、もちろん、より簡単な方法、使用gitのです習慣は、ここで私たちが動作する「SCP」コマンドを使用し、非常に良いです。

scp -r USER/FILE/LOCATION [email protected]:~/
17708740-2304e1c59db12b09.gif
image.gif

一般的にLinuxで使用してmvコマンドはほとんどここずっと紹介です。

この方法を使用する場合は、同時に、手動でフォーマット書込み「=」各拡張のために必要とされ、当然のことながら、利便性のために、それは仮想環境を作成するには、上記最善かに依存する「requirements.txt」フォルダを追加する必要があります仮想環境にインストールさ依存性。

我々が使用する、あなたの機密情報が公開されていない場合の対処上記の手順の後、あなたはあなたのアプリケーションを表示するには、「フラスコの実行」を使用することができ、私たちはネイティブ環境から実行中のアプリケーションの状態を見ることができるように順番であることに注意します:

flask run --host=0.0.0.0
17708740-a738d7c144283f20.gif
image.gif

私たちは、地元のブラウザを入力し、あなたがポート5000を開いていても可能であり、ポートが上記開いていることに注意してください。

***.***.***.***:5000      //***代表你的共有IP
17708740-9a4cda6d7772c059.gif
image.gif

ので、それはまだ、開放されていてもよいアリクラウドセキュリティグループではなく開いているポート5000は、あなたがそれを手動で設定する必要があります

17708740-de004ae1883f6923
画像
17708740-43fbc168820e1c5f.gif
image.gif

nginxのGunicornおよびSupervisor

もちろん、実際のアプリケーションの展開は確かに私たちは私たちの例を実行するには、より堅牢なサーバーが必要なので、確認することはできません。簡単に言えば、nginxのは、Webサーバである、それは便利で、良好な性能を持っていますが、彼は唯一のCSS、JSおよびその他の文書を扱うことができ、Pythonコードを識別することができないので、Gunicornは戦場に出ます。gunicornのpython WSGI HTTPサーバであり、Rubyプロジェクトからユニコーン、Unixシステム上でのみ実行をサポートしています。様々なWSGIウェブフレームと協働可能なpreforkのマスタワーカモデルを用いてGunicorn。

もちろん、サイトを開いているウィンドウでも実行することができますされていますが、考えていない場合、その後、スーパーバイザーPythonは普通のコマンドは、汎用的な開発プロセスの管理手順不可欠のようなSupervisorソフトウェアこれらのことができているだけでなく、ラインプロセスはバックグラウンドデーモンとなり、またデーモンを監視することができます。互いに組み合わせるこれら三つの依存を通じ、我々は小さなブログが良好な性能を持って作成することができます。

まず、デフォルトの設定を削除して、新しい設定を書き込みます。

sudo rm /etc/nginx/sites-enabled/default
sudo vim /etc/nginx/sites-enabled/flaskblog

17708740-23c85102366ebb34.gif
image.gif
//Nginx:

server{
        listen 80;
        server_name **.**.**.**;

        location /static {
                alias /home/**/**/app/static;

        }

        location / {
                proxy_pass http://localhost:8000;
                include /etc/nginx/proxy_params;
                proxy_redirect off;
        }
}

17708740-ad69a0f443d81e28.gif
image.gif

同時に、あなたはポート80を開くことができ、具体的な操作は言うことはありません。

nginxのを再起動するには、次の操作を使用して、当然のことながら、この時間は、あなたは、CSSファイルを見ることができますが、その理由は、nginxのは、Pythonコードを認識しない前に、私たちが言ったことで、Webページのようには見えません。

sudo systemctl restart nginx
17708740-5a82e8e77ece5bd0.gif
image.gif

その後、我々は使用します。

gunicorn -w 3 test:app
17708740-88d82f47b9af581a.gif
image.gif

我々はHerokuの中で展開gunicornについてここでは詳細に説明されていない、フラスコ内の資料に記載されています。

最後に、我々は見てのスーパーバイザーを設定します。

[program:flaskblog]
directory=/home/**/tutorial
command=/home/**/tutorial/venv/bin/gunicorn -w 3 test:app
user=**
autostart=true
autorestart=true
stopasgroup=true
killasgroup=true
stderr_logfile=/var/log/flaskblog/flaskblog.err.log
stdout_logfile=/var/log/flaskblog/flaskblog.out.log

17708740-8cc119973ea309a4.gif
image.gif

そして、我々は、ファイルフォルダを作成する必要があるスーパーバイザーが、それはウェブサイトを終え得ることができます再起動します。

最後の一つであり、次のセクションでは、我々は、ドメイン名とIPバインディング方法を見ていきます。

ます。https://www.jianshu.com/p/bedda5a16ec3で再現

おすすめ

転載: blog.csdn.net/weixin_34192732/article/details/91187149