我一直在尝试写一个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应用。
我花了一天的时间来尝试让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)
另一个解决方法是,你可以尝试删除所有现有的图像,然后重新开始,这可能是你的图像被破坏。
我也有同样的问题,但增加了以下选项
d.create_args = ["-i"]
解决了我的问题