2017-09-16 291 views
1

我在Ubuntu(14)上与dockers(17)一起苦苦挣扎。我必须在使用docker技术的几台机器上运行rabbitMQ。我设法用服务器重启后启动Docker服务

sudo docker service create -d --hostname my-rabbit --name some-rabbit -e RABBITMQ_DEFAULT_USER=user -e RABBITMQ_DEFAULT_PASS=password rabbitmq:3-management 

这样做对他们中的一个,但我遇到一个问题别人。当我作为码头服务运行Rabbit时,一切正常,但重新启动计算机后问题就开始了。服务器重新启动后,docker开始自动运行 - 我运行

sudo docker service list 
sudo docker ps 

检查。但是当我想用浏览器连接到rabbitServer时,什么都不会发生。当我在服务器中使用curl或wget时,它会等待响应并且没有任何反应。当我跑

sudo service docker restart 

然后一切都开始像它应该的工作。端口始终打开,并且信息被保存,所以重新启动后我不必重新打开它们。其中一台机器没有这个问题,即使重新启动后一切仍然正常

回答

0

它很奇怪,我仍然不知道为什么这个工程。机器重新启动后,我restertad码头服务,以及之后,我再次保存ipconfig持久性配置没有添加任何规则,它开始在所有机器上工作

3

我认为这是因为您重新启动计算机时,您的docker守护进程和/或容器未启动。为了实现这一点,你应该做一些如下操作:

sudo systemctl enable docker 

这应该在重启主机后启动Docker守护进程。当你运行该服务是通过

--restart-condition:any 

应在案件或系统故障或重新启动在这种情况下开始新的容器那么你将不得不做的是。

+0

重新启动后,当我运行** sudo docker服务列表**兔子服务器在结果中,当我运行** sudo docker ps **时,兔子也在那里。这是不是意味着deamon在服务器重启后运行? – TajnosAgentos

+0

@TajnosAgentos我相信如果重启后,一旦你运行这些命令,那么是的,码头守护进程已成功开始,以及兔子容器。 – Sergiu