小编典典

Docker Compose与Dockerfile-哪个更好?

docker

我一直在阅读和学习有关Docker的知识,并试图正确选择要使用的Django设置。到目前为止,有:

Docker
Compose
Dockerfile

我了解在Dockerfiles中使用了Docker Compose,但是我不确定是否将所有内容放入一个大的Dockerfile中并用多个FROM命令处理不同的映像是否是一个好习惯?

我想使用几个不同的图像,包括:

uwsgi
nginx
postgres
redis
rabbitmq
celery with cron

请提供关于使用 Docker 设置此类环境的最佳实践的建议。

如果有帮助,我在Mac上,请使用boot2docker

我遇到的一些问题:

  1. Docker Compose与Python3不兼容
  2. 我想对我的项目进行容器化,所以如果一个大的Dockerfile不理想,那么我觉得我需要使用Docker Compose分解它
  3. 我可以使项目Py2和Py3兼容,所以倾向于django-compose

阅读 480

收藏
2020-06-17

共1个答案

小编典典

答案都不是。

如果将build命令添加到项目的,则Docker Compose(在本文中称为compose)将使用Dockerfile docker- compose.yml

您的Docker工作流程应该是为要创建的Dockerfile每个映像构建合适的映像,然后使用compose通过build命令组装映像。

您可以使用等等的build /path/to/dockerfiles/blah位置来指定各个Dockerfile的路径。/path/to/dockerfiles/blah``Dockerfile

2020-06-17