如何在完成后保存docker容器,这样你可以继续使用它吗?

时间:2018-05-16 08:02:30

标签: docker

退出shell后,我在容器内执行的所有操作都将丢失。是否有可能使其状态超出其图像定义的环境?

简单测试:在Dockerfile中写入FROM ubuntu,然后使用:

创建图像
docker build -t test .

获取图像:docker image ls,然后创建并运行容器:

docker run -d -ti imageid /bin/bash

进入内部后,触摸/opt/test.txt然后退出shell。一旦容器完成,可以再次看到测试文件而不触及其图像会有什么魔力?或者,从来没有将他们的状态保存在他们的形象之外,这是容器的关键吗?

请注意,我想避免挂载本地目录,我的问题不是关于如何保存容器处理的数据,而是关于在容器完成后保存容器的文件系统,超出其实际图像。如果您想使用开发容器以便正确构建其图像,该怎么办?你开始处理容器,安装一些软件,做测试,然后你必须关闭它一段时间然后“启动”回来继续工作......

1 个答案:

答案 0 :(得分:1)

感谢@tgogos评论,我用docker ps -a获得了容器ID,然后:

$ docker start containerid
$ docker attach containerid

此处有更多信息:I lose my data when the container exits