通过
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, 重啟了修改的就沒了, 除非做了目錄映射到本地的文件