我在这里使用docker-compose来构建我的jenkins容器,而我无法将它安装到1个容器上。这就是我所拥有的:
搬运工-compose.yml:
version: '2'
networks:
nw:
driver: bridge
volumes:
jenkins-ansible:
jenkins-data:
services:
jenkins:
image: jenkins
ports:
- "801:8080"
volumes:
- jenkins-ansible:/var/lib/ansible
- jenkins-data:/var/jenkins_home
networks:
- nw
我运行docker-compose up -d
并且容器启动正常,但是当我将BASH放入容器时,df -h
只显示一个挂载,/ var / jenkins_home。
如果我注释掉-jenkins-data:/var/jenkins_home
行,则会安装ansible卷。
那为什么它只挂载一个卷?我无法提及只允许每个容器安装一个卷,但这就是它的外观。
jenkins-data mount有什么特别之处,它优先安装在jenkins-ansible mount上? (我已尝试将2条安装线交换,没有变化)
提前感谢,
吉姆
答案 0 :(得分:1)
卷已正确安装,但不会使用df -h
显示。
如果你真的想看到所有坐骑,你可以在容器内做cat /proc/mounts
,他们会显示:
/dev/sdb /var/jenkins_home ext4 rw,nosuid,nodev,relatime,data=ordered 0 0
/dev/sdb /var/lib/ansible ext4 rw,nosuid,nodev,relatime,data=ordered 0 0
你也可以docker inspect CONTAINER_NAME
查看坐骑,你应该看到这样的东西:
"Mounts": [
{
"Type": "volume",
"Name": "tst1_jenkins-ansible",
"Source": "/data/docker-data/volumes/tst1_jenkins-ansible/_data",
"Destination": "/var/lib/ansible",
"Driver": "local",
"Mode": "rw",
"RW": true,
"Propagation": ""
},
{
"Type": "volume",
"Name": "tst1_jenkins-data",
"Source": "/data/docker-data/volumes/tst1_jenkins-data/_data",
"Destination": "/var/jenkins_home",
"Driver": "local",
"Mode": "rw",
"RW": true,
"Propagation": ""
}
],