从现有的虚拟机创builddocker镜像

我需要用CentOS和MySQL创builddocker基础镜像。 但是我已经有了这样的虚拟机(没有docker)。 我如何从这个现有的虚拟机创build基地docker的形象,你在另一台机器与docker?

我想你误解了docker工作(或者我误解了你的问题)。 Docker不是VM提供者; 这是一个基于libcontainer的容器pipe理机制。 就你而言,我会做类似的事情

  • yum列表安装
  • 下载Centos版本X的基础docker图像(或者您可以从头创build一个)
  • 用yum install把这个输出的一个子集pipe到一个Dockerfile中
  • 创造你的形象
  • 如果在现有虚拟机中安装了configuration/非RPM安装,则可以在容器中重build这些configuration,或者在最坏的情况下重新分配这些configuration
  • 你的MySQL更容易pipe理; 只要数据库文件夹/分区可以被复制并与docker共享,你可以安装mysql并使用它。 用postgres做了好几次,希望mysql同样干净。

好的是,一旦你经历了这个练习,你就有了一个脚本,告诉你如何创build你的图像。

虽然其他评论者正确地指出,将虚拟机导入到Docker中并不是创build映像的有效方法, 在完全落实之前, 这是可能的,并且可以为您提供一个快速的起点。 要做到这一点,你只需要提供一个Linux根文件系统(在你的情况下:你的CentOS虚拟机),并将其stream入docker import,如下所示:

tar -cC [folder containing provisioned root fs] . | docker import - [image name] 

Docker的基本映像文档有更多的信息,甚至链接到一个脚本来创build一个CentOS基础镜像。