Docker 群中的 Jenkins 服务保持在 0/1 副本
Jenkins service in Docker swarm stays at 0/1 replicas
我正在尝试 运行 一个 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
但是检查服务状态和容器 运行ning 我看到副本保持在 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
我试过 运行在一个容器中使用 Jenkins(没有 swarm),它工作得很好,来自 docker's tutorial 的 swarm 服务示例也很好用。
是什么阻止了 Jenkins 服务 运行ning?
问题出在传递给 --mount 选项的参数上。
我试图将源作为主机目录传递,而根据 docker swarm documentation,我应该传递 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 在找不到安装源时显示错误消息会很有用。
我正在尝试 运行 一个 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
但是检查服务状态和容器 运行ning 我看到副本保持在 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
我试过 运行在一个容器中使用 Jenkins(没有 swarm),它工作得很好,来自 docker's tutorial 的 swarm 服务示例也很好用。
是什么阻止了 Jenkins 服务 运行ning?
问题出在传递给 --mount 选项的参数上。
我试图将源作为主机目录传递,而根据 docker swarm documentation,我应该传递 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 在找不到安装源时显示错误消息会很有用。