我尝试了几种不同的方法来获取WORKERS
语句中的CMD
变量,但它们似乎都不起作用。基于Alpine的容器在语法和使用方面似乎也非常挑剔。任何帮助将不胜感激。
Dockerfile
ENV WORKERS=2
EXPOSE 5000
CMD ["/usr/local/bin/gunicorn", "-b 0.0.0.0:5000", "-w ${WORKERS}", "app:app"]
答案 0 :(得分:2)
显然,Alpine不会从子shell运行应用程序,遵循此模式将允许它正常工作。
ENV WORKERS=2
ENV WORKER_TIMEOUT=60
EXPOSE 5000
CMD ["/bin/sh", "-c", "/usr/local/bin/gunicorn \
-b 0.0.0.0:5000 -w ${WORKERS} -t ${WORKER_TIMEOUT} app:app"]