如何配置boot2docker以在启动时启动容器?

时间:2015-02-15 12:26:22

标签: docker vagrant boot2docker

我是boot2docker的新手,在安装流程管理器时遇到一些问题。

我要设置的设置是使用vagrant来创建我的本地boot2docker开发机器并配置该VM内的容器。我正在使用的Vagrant框就是这个:yungsang/boot2docker

我已经设置了boot2docker VM来创建一个容器:

config.vm.provision :docker do |d|
     d.pull_images "wkruse/eventstore"
     d.run "eventstore",
         image: "wkruse/eventstore",
         args: "-p 1113:1113 -p 2113:2113 -v /data:/data",
         cmd: "--ext-ip=0.0.0.0 --http-prefixes=\"http://*:2113/\" --run-projections=all"
end

除了在启动时没有启动容器之外,这很好用。有没有办法配置docker以便它在启动时启动所有容器,或者是否有一种简单的方法可以在boot2docker中安装像systemd这样的进程管理器来处理容器的启动?

更新

我改变了方法并使用了一个简单的脚本,但它不起作用:

docker run -d -p 2113:2113 -p 1113:1113 -v /data/eventstore:/data --restart=always --name eventstore wkruse/eventstore --ext-ip=0.0.0.0 --http-prefixes="http://*:2113/" --run-projections=all

我有另一个容器,我基本上做同样的事情,它就像一个魅力。我也试过--restart=on-failures:10,但这也不起作用。

更新2

如果我删除-v /data/eventstore:/data,则一切正常。我觉得有点奇怪。

1 个答案:

答案 0 :(得分:1)

--restart always添加到您的args:行。