docker
并且docker-compose
似乎正在与同一个dockerFile进行交互,这两个工具之间有什么区别?
在docker
一个码头工人的发动机管理单个容器时,CLI使用。这是访问docker daemon api的客户端命令行。
该docker-compose
CLI可以用于管理多容器应用程序。它还会将您在docker run
cli 上输入的许多选项移到docker- compose.yml
文件中,以方便重用。它在与所使用的同一docker api上充当前端“脚本” docker
,因此您可以docker- compose
使用docker
命令和许多shell脚本来完成所有工作。有关更多详细信息,请参阅docker-
compose上的此文档
。
群更新
自发布此答案以来,docker已添加了docker-
compose.yml文件的第二种用法。从版本3的yml格式和docker 1.13开始,您可以将yml与docker-
compose一起使用,还可以在docker的swarm模式下定义堆栈。为此,您需要使用docker stack deploy -c docker- compose.yml $stack_name
而不是,docker-compose up
然后使用docker
命令而不是命令来管理堆栈docker-compose
。两种用途之间的映射是一对一的:
有关swarm模式的更多详细信息,请参阅docker的swarm模式文档。
问题内容: 每当我执行 我看到状态为“ UP”的容器。如果我做 我将看到更多详细信息,但状态相同。这两个命令之间有什么区别吗? 问题答案: docker-compose start (https://docs.docker.com/compose/reference/start/) 启动服务的现有容器。 docker-compose up (https://docs.docker.com/comp
问题内容: 和之间有什么区别? 假设在dockerized项目路径中有一个文件: 和 问题答案: 可以被认为是DockerCLI的包装器(实际上,它是python中的另一种实现,如[注释中所述),以节省时间并避免500个字符长的行(并同时启动多个容器)。它使用一个名为的文件来检索参数。 您可以在此处找到docker- compose文件格式的参考。 因此,基本上,您将阅读,查找包含该语句的所有服务
问题内容: 在深入研究Docker,Google Cloud和Kubernetes的同时,还没有清楚地了解这三个产品,在我看来,这些产品是重叠的,但它们并不兼容。 例如,需要重写文件,以便可以将应用程序部署到Kubernetes。 有人可以对Docker,Docker Compose,Docker Cloud和Kubernetes重叠之处以及其中一个相互依赖的地方进行概括的粗略描述吗? 问题答案:
在深入研究Docker、Google Cloud和Kubernetes的同时,我还没有清楚地了解这三个产品,在我看来,这些产品是重叠的,但它们并不兼容。 例如,需要重新编写文件,以便将应用程序部署到Kubernetes。 有人能提供一个高层次的粗略描述Docker、Docker Compose、Docker Cloud和Kubernetes在哪些地方重叠,哪些地方依赖于另一个吗?
我对docker比较陌生,我想知道docker-compose.yml文件和简单的docker文件有什么基本区别。