我在 ubuntu ec2 实例中运行 docker 东西,但是发生了一些事情(Amazon AWS EC2 卷问题阻止通过 SSH 访问实例) 并且它不再运行。
我正在考虑将 docker 内容移至另一个 amazon linux ec2 实例。一般来说,应该将哪些内容复制到新机器上?
我要求的移动方法与https://blog.giantswarm.io/moving-docker-container-images-around/。因为我不再有权访问正在运行的实例。但我可以访问文件系统。我担心这意味着我丢失了容器中的所有配置。
答案1
我不知道您遇到的故障的性质。“某些事情”并没有真正告诉我很多。但是如果您别无选择,您可以访问每个容器的层定义和根文件系统。在尝试此操作之前,请确保您没有其他选择。此处的任何失误都将永久损坏容器。所以我会从非符号副本开始。
如果愿意,您也可以只复制您希望从容器文件结构中保存的文件。只需确保不要弄乱容器本身的任何东西即可。
去:
cd /var/lib/docker/aufs/mnt/
看看你能在里面找到什么,如果你ll
进入这个目录,你会看到一堆带有长字母数字名称的目录。每个目录都代表一张图片。当你输入时,docker ps
你会得到这些数字的简写。搜索你的图片。找到后,你只需在里面导航,从现在开始要非常小心。
这是我的一个。任何不是由层或您添加到 dockerfile、卷等中的文件都将是符号链接。其余文件将是您的文件。
请记住,这是最后的恢复手段。您可能会破坏此处的容器。所以要小心。