Docker容器未在boot2docker启动时运行

时间:2016-02-05 09:01:37

标签: windows docker virtual-machine windows-10 boot2docker

操作系统:Windows10

使用:

  • Oracle VM VirtualBox
  • DockerToolbox v1.9.1i

嗨,你知道如何在boot2docker启动时自动启动容器吗?

我用docker-machine创建了一台新机器。然后我用docker run运行了一个新容器。它全部启动并运行,但当我关闭Windows并尝试启动我的 docker machine 时,内部的容器无法启动。我试图将docker start id命令添加到文件/mnt/sda1/var/lib/boot2docker/profile,但它不起作用。

我还尝试使用ssh(docker-machine ssh name)连接到虚拟机,并运行命令docker start id但没有成功。最后,我必须停止并移除容器并再次生成docker run

1 个答案:

答案 0 :(得分:0)

我怀疑你的容器没有启动,因为当机器(boot2docker VM)重新启动时,它仍然存在于' Exited'状态。

使用docker-machine ssh default "docker ps -a"确认。 (在docker-machine start default之后)

如果是这样,请在/mnt/sda1/var/lib/boot2docker/profile调用脚本中添加以下内容:

  • 测试if the container is exited

    docker inspect -f {{.State.Running}} $CONTAINER_ID
    
  • 如果是上一个命令

    • 错误,这意味着容器根本不是 runnig:docker run
    • 返回false,docker rm + docker run
    • return true:无事可做。