通过
docker run -it debian bash
进入的交互式镜像,结果每次的修改都没有自动保存。我记得是有这个功能的啊。。就算不commit,进去的时候,做过的修改应该也保存了啊。。debian 8docker 1.10
闭关修行中......
不是没有保存,而是你每次执行这个命令回产生一个新的容器,可以通过命令 docker ps -l查看,你可以通过 docker attach 容器ID 命令重新进去这个容器,会看到原来的内容还存在的。
docker 在容器中做的修改都需要commit才能保存到镜像里,如果你想再次进入容器修改的东西还在的话,
可以使用docker run -idt运行容器并挂在后台,或者是docker run -it进去容器之后不要使用exit退出,使用control+p,control+q让容器继续挂在后台运行。
docker run -idt debian bash
然后用docker attach 或者docker exec进入容器中修改,建议使用docker exec进入,exec进入容器是再开一个进程进入的,所以退出时使用exit退出也不影响容器继续挂在后台运行,命令如下:
docker exec -it [container id] bashdocker attach [container id]
上面的回答都正确,不过不建议使用attach命令,建议用exec进入容器查看更改。因为attach命令退出会导致容器退出。
容器不commit, 重启了修改的就没了, 除非做了目录映射到本地的文件
不是没有保存,而是你每次执行这个命令回产生一个新的容器,可以通过命令 docker ps -l查看,你可以通过 docker attach 容器ID 命令重新进去这个容器,会看到原来的内容还存在的。
docker 在容器中做的修改都需要commit才能保存到镜像里,如果你想再次进入容器修改的东西还在的话,
可以使用docker run -idt运行容器并挂在后台,或者是docker run -it进去容器之后不要使用exit退出,使用control+p,control+q让容器继续挂在后台运行。
docker run -idt debian bash
然后用docker attach 或者docker exec进入容器中修改,建议使用docker exec进入,exec进入容器是再开一个进程进入的,所以退出时使用exit退出也不影响容器继续挂在后台运行,命令如下:
docker exec -it [container id] bash
docker attach [container id]
上面的回答都正确,不过不建议使用attach命令,建议用exec进入容器查看更改。因为attach命令退出会导致容器退出。
容器不commit, 重启了修改的就没了, 除非做了目录映射到本地的文件