Vagrant管理的docker容器无法启动。

问题描述 投票:1回答:2

我一直在尝试写一个vagrant文件来启动我的docker容器,以运行我一直在写的一个小的网络应用。然而,当我尝试使用vagrant启动时,我最终得到一个错误信息说

The container started either never left the "stopped" state or
very quickly reverted to the "stopped" state. This is usually
because the container didn't execute a command that kept it running,
and usually indicates a misconfiguration.

If you meant for this container to not remain running, please
set the Docker provider configuration "remains_running" to "false":

  config.vm.provider "docker" do |d|
    d.remains_running = false
  end

我对vagrant很陌生,所以我不太清楚什么是解决这个问题的最好方法。

我的vagrant文件包含

Vagrant.configure("2") do |config|

  config.vm.synced_folder "thelibrary", "/thelibrary"

  config.vm.provider "docker" do |d|
    d.image           = "django-dev"
    d.has_ssh         = false
    d.ports           = ["8000:8000"]
    d.cmd = ["python", "/thelibrary/manage.py", "runserver", "0.0.0.0:8000"]

  end

end

我不知道为什么它说命令不能继续运行。我可以用同样的命令来运行docker容器,而且它可以毫无问题地旋转我的django应用。

django vagrant docker
2个回答
0
投票

我花了一天的时间来尝试让docker机器运行......终于让它工作。下面是我的vangrant文件,希望这至少可以让你开始。

config.vm.provider :docker do |d|
    d.image = "paintedfox/postgresql"
    d.name = "db"
    d.cmd = ["/sbin/my_init", "--enable-insecure-key"]
end

vagrant status返回给我的是:

当前的机器状态:dev running (docker)

另一个解决方法是,你可以尝试删除所有现有的图像,然后重新开始,这可能是你的图像被破坏。


0
投票

我也有同样的问题,但增加了以下选项

d.create_args = ["-i"]

解决了我的问题

© www.soinside.com 2019 - 2024. All rights reserved.