Docker - 使用 运行 进程提交容器 (postgresql)
Docker - commit container with running processes (postgresql)
是否可以使用 postgresql 运行ning 提交容器以便立即准备好?我试过使用启动脚本、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]
在 运行ning 新映像后,postgresql 未 运行ning 并且锁定文件被遗留下来。是否可以像这样提交 运行ning 服务,或者有没有办法在 运行ning 图像时准备好 postgresql?
图像只是一组文件没有进程,所以问题没有意义。当您从图像启动容器时,进程将从此处启动 - 进程仅存在于正在执行的容器中,当容器停止时不再有进程 - 只有来自容器文件系统的文件。
是否可以使用 postgresql 运行ning 提交容器以便立即准备好?我试过使用启动脚本、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]
在 运行ning 新映像后,postgresql 未 运行ning 并且锁定文件被遗留下来。是否可以像这样提交 运行ning 服务,或者有没有办法在 运行ning 图像时准备好 postgresql?
图像只是一组文件没有进程,所以问题没有意义。当您从图像启动容器时,进程将从此处启动 - 进程仅存在于正在执行的容器中,当容器停止时不再有进程 - 只有来自容器文件系统的文件。