退出shell后,我在容器内执行的所有操作都将丢失。是否有可能使其状态超出其图像定义的环境?
简单测试:在Dockerfile中写入FROM ubuntu,然后使用:
创建图像docker build -t test .
获取图像:docker image ls,然后创建并运行容器:
docker run -d -ti imageid /bin/bash
进入内部后,触摸/opt/test.txt然后退出shell。一旦容器完成,可以再次看到测试文件而不触及其图像会有什么魔力?或者,从来没有将他们的状态保存在他们的形象之外,这是容器的关键吗?
请注意,我想避免挂载本地目录,我的问题不是关于如何保存容器处理的数据,而是关于在容器完成后保存容器的文件系统,超出其实际图像。如果您想使用开发容器以便正确构建其图像,该怎么办?你开始处理容器,安装一些软件,做测试,然后你必须关闭它一段时间然后“启动”回来继续工作......
答案 0 :(得分:1)
感谢@tgogos评论,我用docker ps -a获得了容器ID,然后:
$ docker start containerid
$ docker attach containerid