Docker群中的Jenkins服务保持在0/1复制

我正在尝试在Docker群中使用以下命令运行容错Jenkins:

docker service create --replicas 1 --name jenkins -p 8080:8080 -p 50000:50000 --mount src=/home/ubuntu/jenkins_home,dst=/var/jenkins_home jenkins:alpine 

但检查服务状态和容器运行我看到副本保持在0。

 ubuntu@ip-172-30-3-81:~$ docker service create --replicas 1 --name jenkins -p 8080:8080 -p 50000:50000 --mount src=/home/ubuntu/jenkins_home,dst=/var/jenkins_home jenkins:alpine 14kwt6xoxorn62irnv9y2wm3r ubuntu@ip-172-30-3-81:~$ docker service ls ID NAME REPLICAS IMAGE COMMAND 14kwt6xoxorn jenkins 0/1 jenkins:alpine 87ovyhkparou helloworld 1/1 alpine ping docker.com ubuntu@ip-172-30-3-81:~$ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 739f8180c989 alpine:latest "ping docker.com" 21 minutes ago Up 21 minutes helloworld.1.4rz08cygb7whjmzm3922h0bfb 

我试过在一个容器(没有swarm)中运行Jenkins,它完美的工作,而docker的教程的swarm服务的例子也完美的作品。

什么是阻止jenkins服务运行?

问题是传递给–mount选项的参数。

我试图通过源代码作为主机目录,当我应该通过docker群文档传递泊坞窗卷。 为了纠正这个问题,我做了以下工作。

 docker volume create --name jenkins_home docker service create --replicas 1 --name jenkins -p 8080:8080 -p 50000:50000 --mount source=jenkins_home,dst=/var/jenkins_home jenkins:alpine 

作为一个侧面说明,我认为docker在安装源找不到的时候显示错误信息会很有用。