主机重启后无法启动退出 docker 容器

Couldn't start exited docker container after restart of host machine

我意外地关闭了我的主机,当它再次打开时我所有的 docker 容器都退出了。

我可以使用 docker ps -a

看到它们

我无法使用 docker start {container_id}

启动它们中的任何一个

我收到这个错误:

Error response from daemon: Cannot start container cc61efa31df8: [8] System error: not a directory
Error: failed to start containers: [cc61efa31df8]

有没有人试过启动退出的容器?

我不想删除并重新创建容器,因为我在 mysql 容器上有一些数据。

我在 Mac,使用 docker 的并行驱动程序。

查看容器日志找出错误。

> docker logs cc61efa31df8

我猜你的 docker 容器包含 mysql 服务。所以当您启动 docker 容器时 mysql 服务无法启动。

尽管@Thanh Nguyen Van 的回答帮助我理解了问题,但我没有将其标记为正确的问题,因为最初的问题似乎仍未解决。

我使用了 docker inspect 并找到了数据库卷。

我检查了它们,它们是空的,这让我认为关机后卷 destroyed/deleted 根据 boot2docker documentation 这是正确的。

Changes outside of these directories will be lost after powering down or restarting the VM - to make permanent modifications see the FAQ.

所以没有错。

如果有人想在 docker-machine 重新启动之间保留数据,只需确保将数据库文件映射到主机,这样新启动的 docker-machine 会将映射的文件夹挂载为容器体积。