Docker的新功能 - 如何实现克隆设置?

时间:2015-10-13 06:07:06

标签: docker

我的目标是使用Docker创建运行postfix + dovecot的邮件设置,完全配置并准备就绪(在Ubuntu 14.04上),这样我就可以轻松部署在多个服务器上。据我了解Docker,执行此操作的过程是:

  1. 启动新容器(docker run -it ubuntu bash)。
  2. 安装并配置postfix和dovecot。
  3. 如果我需要关闭并休息一下,我可以退出shell并通过docker start <id>然后docker attach <id>返回容器。
  4. (这里的事情对我来说很模糊)

    此时,将图像导出到文件,在其他服务器上导入并运行它会更好吗?如何确保容器在运行时自动启动postfix,dovecot和其他服务?我也不太了解使用Dockerfile自动安装与仅手动安装和导出图像之间的区别。

2 个答案:

答案 0 :(得分:1)

  1. 使用 Dockerfile s配置多个泊坞窗图像

    每个docker容器应该只运行一个服务。所以一个用于postfix的容器,一个用于另一个服务等。你可以让你的运行容器相互通信

  2. 构建这些图片

  3. 将这些图像推送到注册表,以便您可以轻松地将它们拉到不同的服务器上并进行相同的设置。

  4. 将这些图像拉到不同的服务器上。 启动容器进行配置时,可以传递ENV变量。

  5. 您不应直接在正在运行的容器中安装内容。 这打败了使用Docker进行可重现设置的目的。

答案 1 :(得分:1)

您的第2步应该是RUN内的Dockerfile条目,然后用于运行docker build来创建图像。
然后可以根据需要使用此图像来启动和停止运行容器。 请参阅Dockerfile RUN entry文档。这通常与apt-get install一起使用来安装所需的组件。

Dockerfile中的ENTRYPOINT应设置为启动您的服务。 通常,建议每张图像只有一个过程。