Docker - 使用正在运行的进程提交容器(postgresql)

时间:2015-01-15 17:20:22

标签: docker

是否可以提交运行postgresql的容器,以便立即就绪?我已经尝试使用启动脚本,CMD和bashrc来启动postgresql,这些都在使用时启动它

  

docker run -it [containerID]

但是登录后postgresql大约需要3-5秒。我很遗憾需要在登录时运行postgresql。

使用这种方法......

  

docker build -t [name]

     

docker run -it [containerId]

然后在容器内部运行

  

service postgresql start

并用ctrl p + q分离。一旦分离,我提交

  

docker commit [containerId] [name]

运行新映像后,postgresql未运行且锁定文件遗留下来。是否可以提交这样的运行服务,或者有没有办法在运行映像时准备好postgresql?

1 个答案:

答案 0 :(得分:5)

图像只是一组没有进程的文件,所以问题没有意义。当您从image启动容器时,进程将从此处开始 - 进程仅存在于执行容器中,当容器停止时,不再有进程 - 只有来自容器文件系统的文件。