对于jenkins compose文件,Docker卷为空,而不是复制任何文件

时间:2017-05-17 06:17:29

标签: docker docker-compose

我正在尝试使用docker compose文件创建jenkins和nexus集成。我的jenkins更新了几个使用Dockerfile的插件和在/ var / lib / jenkins /下创建的卷。

VOLUME [“/ var / lib / jenkins /”]

在撰写文件中的

我试图将我的卷映射到本地商店/ opt / jenkins /

jenkins:
  build: ./jenkins
  ports:
    - 9090:8080
  volumes:      
    - /opt/jenkins/:/var/lib/jenkins/

但是没有什么东西可以复制到我的持久性目录(/ opt / jenkins /)。

我可以在一些卷下的_data / jobs /目录下创建的所有jenkins作业中看到。不在我的卷定义/ var / lib / jenkins /

任何人都能帮我解决这个问题的原因吗?

1 个答案:

答案 0 :(得分:0)

来自documentation

  

创建容器时初始化卷。如果容器的基本映像包含指定安装点的数据,则在卷初始化时将现有数据复制到新卷中。 (请注意,这在安装主机目录时不适用。

在mount中将主机目录作为数据卷:

  

此命令将主机目录/ src / webapp安装到/ webapp的容器中。如果路径/ webapp已经存在于容器的映像中,则/ src / webapp挂载覆盖但不会删除预先存在的内容。删除安装后,可以再次访问该内容。这与mount命令的预期行为一致。

所以基本上你覆盖(隐藏)var / lib / jenkins中的任何东西。如果这些东西被隐藏,你的图像能起作用吗?