então eu tenho essa API de descanso agradável implementada no Flask em execução no docker e estou pensando em dimensionar. Foi assim que progredi:
CMD ["flask", "run", "--host=0.0.0.0"]
e
docker run -d -p 5000:5000 pyrest-alpine
funciona bem
CMD ["gunicorn", "-w", "4", "-b", "0.0.0.0:5000", "pyrest:app"]
e
docker run -d -p 5000:5000 pyrest-alpine
Isso também funciona bem, o Gunicorn forneceu um dimensionamento via modelo de trabalhador prefork em um único contêiner. Agora eu quero dimensionar via replicação do enxame do Docker com verificações de saúde em que ambos
CMD ["gunicorn", "-w", "4", "-b", "0.0.0.0:5000", "pyrest:app"]
e
CMD ["flask", "run", "--host=0.0.0.0"]
funciona muito bem com
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
Minha pergunta é: Eu ainda uso o gunicorn ao usar a replicação de enxame do docker?
fonte