VPSで複数のFlaskを用いたサービスを立ち上げる
はじめに
1つのvpsで複数のFlaskアプリケーションを立ち上げるためのメモ
Flask,uWSGI,Nginxを使う。
https://qiita.com/morinokami/items/e0efb2ae2aa04a1b148b
ほとんどこの記事に書いてあることなので,
複数アプリケーションを立ち上げるときの違いだけ記述。
app1のドメインはapp1.com
app2のドメインはapp2.com
とする。
ドメインは2つとも同じvpsのIPアドレスを設定しておけば良い。
ディレクトリ構成は下記のようになっているとする。
home
|-strat.sh
|-app1
|-app.py
|-app2
|-app.py
Nginxの設定
/etc/nginx/conf.d/に.confファイルを作って設定する。
server_nameにドメインを書いておくと,ブラウザで入力されたドメインに応じて動作を切り替えることができる。
この際flaskにつなげるにはUNIXソケットを用いるが,
単に.sockの名前を変えてしまえばいい。
server {
listen 80;
server_name app1.com www.app1.com;
location / {
include uwsgi_params;
uwsgi_pass unix:///tmp/uwsgi_app1.sock;
}
}
server {
listen 80;
server_name app2.com www.app2.com;
location / {
include uwsgi_params;
uwsgi_pass unix:///tmp/uwsgi_app2.sock;
}
}
起動
複数アプリケーションをたちあげるためのスクリプトは以下の通り。
#!/bin/sh
cd app1
uwsgi --socket /tmp/uwsgi_app1.sock --module app --callable app --chmod-socket=666 &
cd ..
cd app2
uwsgi --socket /tmp/uwsgi_app2.sock --module app --callable app --chmod-socket=666 &
./start.sh
で起動。
Author And Source
この問題について(VPSで複数のFlaskを用いたサービスを立ち上げる), 我々は、より多くの情報をここで見つけました https://qiita.com/a2kiti/items/cb045fb9014571faae84著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .