我们的IT部门破坏了mysql容器,现在无法启动它。
我知道我可以提交一个新版本并在没有入口点的情况下运行它,因此我可以“执行-it”进入并检查出什么问题了。
但是如何恢复我的数据?检查旧容器并从安装的卷中复制所有文件? (对于这个问题,这似乎有些矫kill过正,我可以在没有入口点的情况下“启动”容器吗?)
解决此问题的最佳做法是什么?
最佳答案
如果您有已装载的卷,则数据位于主机的卷目录中,除非您将其删除,否则数据将存在。因此,修复您的MySQL镜像,然后创建另一个MySQL容器。
您应该能够使用docker attach
或docker exec
来修复容器。您甚至可以使用以下方式更改容器入口点:How to start a stopped Docker container with a different command?
但这不是一个好方法。如Best practices for writing Dockerfiles中所述,Docker容器应为临时容器,这意味着可以轻松地将它们替换为新容器。因此,最好的选择是销毁您的容器并创建一个新容器。
关于mysql - mysql容器坏了,怎么恢复数据?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44757786/