ホームページ >バックエンド開発 >Python チュートリアル >Python でのデプロイメントの詳細な紹介
しばらくフラスコを勉強していましたが、デプロイしたことがなかったので、どうやってデプロイするかを考えていました。まずサービスを立ち上げましょう。ここでの選択は Flask+uwsgi+Nginx+Ubuntu です。私は Python 2.7.2 を選択しました。これは、ソフトウェア接続を介さずに学習するのが簡単だと思います。 Python3 で書かれています。これを理解したら、最適化は非常に簡単になります。実際、私は多くの原則についてあまり知りません。まずこれを設定して、内部のロジックをゆっくり理解しましょう。
Nginx は、負荷分散として使用できる効率的な Web サーバーおよびリバース プロキシ サーバーです (n 人のユーザーがサーバーにアクセスすると、サーバーの負荷を軽減し、負荷を分散できます)。Apache と比較して、Nginx はサポートしています。同時実行性が高く、数百万の TCP 接続と数十万の同時接続をサポートできます。展開が簡単で、メモリ消費量が少なく、コストが低くなります。ただし、Nginx には Apache ほど多くのモジュールがありません。 Nginx は uWSGI の uwsgi プロトコルをサポートしているため、Nginx と uWSGI を組み合わせることができ、Nginx は動的コンテンツを処理のために uWSGI に渡します。 uwsgi_pass
uwsgi
uWSGIは、WSGIプロトコル、uwsgi、http、およびその他のプロトコルを実装するWebサーバーです。 Nginx の HttpUwsgiModule の機能は、uWSGI サーバーとのやり取りです。 WSGI / uwsgi / uWSGI の 3 つの概念の違いに注意してください。sudo apt-get install python-pip
pip install flask
import flask
フラスコが正常にインストールされたことを証明するエラーは報告されません。したがって、次にしなければならないことは、ngnix と uwsgi をインストールすることです。
sudo apt-get install nginx
このようにして、nginx は正常に起動します。次に、pip を使用して uwsgi をインストールします
。インストールしたら、始めましょう
まず、helloflak の下にアプリの Python パッケージを作成します
#app/__init__.pyfrom flask import Flask app = Flask(__name__)from app import view
from app import app @app.route('/')def index():return 'hellow'
from app import appif __name__ == "__main__": app.run()
次に、helloflaskの下に設定ファイルを作成しました
$ sudo rm /etc/nginx/sites-enabled/default
次に、設定を nginx にソフト接続しましょう。
server { listen 8081; server_name 127.0.0.1; charset utf-8; client_max_body_size 75M; location / { try_files $uri @app; } location @app { include uwsgi_params; uwsgi_pass 127.0.0.1:9000; } }
<code class="hljs groovy">sudo ln -s <span class="hljs-regexp"><span class="hljs-regexp">/home/liwanlei/Desktop/hellowflask/<span class="hljs-regexp">helloflask_nginx.conf /etc<span class="hljs-regexp">/nginx/conf.d/<br>这样我们再去启动我们的nginx,</span></span></span></span></code>
ここにあるのは歓迎ではなく、502 エラーです。現在の uwsgi ファイルがまだ構成されておらず、uwsgi を開始していないため、次のステップはこの uwsgi を取得することです。私設定。
sudo /etc/init.d/nginx restart
[uwsgi] base = /home/liwanlei/Desktop/hellowflask app = hello#module = %(app)pidfile = /var/run/uwsgi.pid master = true wsgi-file = /home/liwanlei/Desktop/hellowflask/hello.py pythonpath = /usr/bin/python chdir = /home/liwanlei/Desktop/hellowflask socket = 127.0.0.1:9000callable = app logto = %n.log plugins = python processes = 8master = true
我们去重新启动我们的nginx,
<code class="hljs bash">sudo nginx <span class="hljs-_">reload<br>平滑重启可以用用,重新加载配置文件,用新的工作进程代替旧的工作进程。<br></span></code>
sudo nginx -s reload
<code class="hljs bash"><span class="hljs-_"><br>启动后,我这里修改了地址,这里就可以直接访问了,那么我们的部署这样就算可以了,简单的。<br><img src="https://img.php.cn/upload/article/000/000/001/25f4d9be3a729ae5fc17c2fefb915c9c-3.jpg" alt=""></span></code>
<br>
完工之后,感觉还是很简单的 有问题那么就去看log,只要log配置得当,那么排除错误是很快的。
以上がPython でのデプロイメントの詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。