前提
Webアプリケーションを勉強中の身です。見当違いな質問でしたらご容赦ください。
Docker コンテナ上で、nginx(reverse proxy) + flask を用いて web app を運用しようと考えています。
疑問
タイトル通りなのですが、WSGIを利用する理由がよくわかりません。
現状の構造として、nginx が reverse proxy として HTTP リクエストを app server(server コンテナ) にリダイレクトし、app server がレスポンスしている状態です。
「flask nginx」で検索すると、大抵「flask + nginx + uWSGI で環境構築」のように、(u)WSGI が必須かの認識を持ってしまいますが、なくても動いてるし何なんだろうと思い質問させていただきました。
調べたこと
以下を見ると、WSGI の有無によって、Webサーバによっては使えないWebアプリフレームワークが出たりと制限が出るとのことでした。
ということは WSGI がなくても稼働していることからも、(flask, nginx) の pair は上記制限は発生しないという認識でよいのでしょうか?
もしそうなら、(app server が web server の実装を知る必要があるとはいえ)このようなケースでは WSGI を間に挟むことのメリットはほとんどないということでしょうか?
何卒よろしくお願いいたします。
Appendix
docker-compose.yml
yml
1version: '3' 2 3services: 4 reverse-proxy: 5 image: nginx 6 container_name: nginx 7 volumes: 8 - ./reverse-proxy/conf.d:/etc/nginx/conf.d 9 ports: 10 - 8080:8080 11 tty: true 12 13 server: 14 image: python:3.9.5-alpine 15 container_name: server 16 volumes: 17 - ./app:/home/app/app 18 - ./run.sh:/home/app/run.sh 19 command: > 20 sh -c "pip install flask pyyaml 21 && cd /home/app 22 && ./run.sh" 23 tty: true 24 expose: 25 - 8000
回答1件
あなたの回答
tips
プレビュー