用docker-compose创build指定的docker卷?

我在docker版本1.11.2。 我能够创build命名的docker卷:

docker volume create --name my-jenkins-volume 

比我能够使用-v选项连接我的容器与命名卷:

 docker run -d -u jenkins --name jenkins -p 50000:50000 -p 443:8443 -v my-jenkins-volume:/var/jenkins_home 

是否有可能在docker-compose中创build这个命名卷?

我试过这个解决scheme,对我来说也是有效

 version: '2' services: alp: image: alpine volumes: - my-jenkins-volume:/your/local/path command: sleep 10000 volumes: my-jenkins-volume: external: true 

如果您从外部来源提供音量,而不是直接从docker-compose规范中提供音量,则外部为true

参考文档https://docs.docker.com/compose/compose-file/#volume-configuration-reference

是的,这是可能的。 实际上,我认为在docker工作者创build它会更好。 以下是我的一个docker-compose.yml的例子:

 version: '2' services: db: image: mysql restart: always volumes: - "wp-db:/var/lib/mysql:rw" volumes: wp-db: {} 

在这里,命名卷是“wp-db”然后,如果你想在另一个docker-compose.yml文件中使用你的卷,你可以使用keyworkd external:

 volumes: my-jenkins-volume: external: true 

(注意:这是在顶级音量关键字,而不是在服务部分)