我已经通过 docker 拉取了一个镜像,然后运行了一个命名容器。如何将该命名容器更新为最新镜像?
并且,不会丢失任何数据,也不必设置数据目录并初始化并用旧数据填充它们(仅使用当前卷),这将是完美的。
环境:docker,Ubuntu 14.04
答案1
我如何将该命名容器更新为最新图像?
这并不是 docker 的预期用途。
每个镜像(以及基于它们的容器)都应该是无状态的。如果每个容器中运行的进程需要在某处存储状态,那么它应该在某处外部该容器的。可以是 RDBMS、主机文件系统的卷挂载、docker 卷等。
如果您真的想做您想做的事情,那么您很可能不应该使用docker,因为这样您肯定会花更多的时间让该工具去做一些它不应该做的事情。
经过下面评论中的讨论,我们澄清了你问的只是:主机卷挂载中的数据是否会随容器一起被删除。答案是:不会。