如何复制已经 exit 的容器中文件
2021-07-22 本文已影响0人
追风骚年
今天由于在一个 nginx 的容器内部修改 nginx 的配置文件,当时手抖,少敲一个封号,导致我 restart 容器之后,容器很快就处于 exit 状态,但是容器已经退出了,我也没办法进行 attach。
思考了很久和朋友讨论了一下,想出两个方案。
方案一
将容器先 export 成一个 tar 文件,再把 tar import 到 images 中去,然后再 run 这个 image 的同时,挂载目录到宿主机,这时就可以操作目录中文件了,改好重新 restart,因为是从刚刚的容器导出的,所以内容是一模一样。
方案二
这个方案就更为简单,虽然说容器是 exit 状态,但是 docker cp
命令是依然可用的,先将容器中的错误文件 cp 到宿主机上,修改正确,然后再从宿主机 cp 到容器内部,再重启容器即可。