ですから、Dockerで実行されているFlaskにこの素晴らしいREST APIを実装し、スケーリングについて考えています。これは私がどのように進歩したかです:
CMD ["flask", "run", "--host=0.0.0.0"]
そして
docker run -d -p 5000:5000 pyrest-alpine
正常に動作します
CMD ["gunicorn", "-w", "4", "-b", "0.0.0.0:5000", "pyrest:app"]
そして
docker run -d -p 5000:5000 pyrest-alpine
これも正常に機能します。Gunicornは、単一コンテナー内のpreforkワーカーモデルを介していくつかのスケーリングを提供しました。
CMD ["gunicorn", "-w", "4", "-b", "0.0.0.0:5000", "pyrest:app"]
そして
CMD ["flask", "run", "--host=0.0.0.0"]
うまく動作する
docker service create --name pyrest-swarm --replicas 2 -p 5000:5000 --health-interval=2s --health-timeout=10s --health-retries=3--health-cmd "curl 0.0.0.0:5000/status || exit 1" pyrest-alpine
私の質問は、Docker Swarmレプリケーションを使用するときにGunicornを引き続き使用しますか?