为什么在使用 Jenkins docker 图像时删除了 "ansible-galaxy" 命令中的 .ansible 目录
Why is the .ansible directory from "ansible-galaxy" command removed when using - Jenkins docker image
我正在尝试使用 Dockerfile
创建自定义 docker 图像。在我的 Dockerfile 中,我已经安装了 ansible,我可以从早期的经验中确认这是有效的,但是当我使用命令 ansible-galaxy
来安装特定的 role
或 collection
(在这种情况下是集合)它没有存储在安装路径中。
DOCKER 构建的输出:
(Previous steps works)
...
Step 11/11 : RUN ansible-galaxy collection install community.vmware
---> Running in e222fee67b89
Process install dependency map
Installing 'community.vmware:1.1.0' to '/home/me/.ansible/collections/ansible_collections/community/vmware'
当我尝试从这个图像 运行 一个容器时,路径 /home/me/.ansible/collections/ansible_collections/community/vmware
不存在,所以在 运行 连接容器之后我必须使用 docker exec
并手动 运行 命令 ansible-galaxy collection install community.vmware
.
任何帮助将不胜感激。
谢谢。
在构建图像本身时,我没有使用 运行 ansible-galaxy
命令,而是将 ansible 集合从 GitHub 拉到我的计算机,然后将集合复制到 /usr/share/jenkins/ref/
。继 Jenkins docker documentation.
COPY .ansible/collection /usr/share/jenkins/ref/
jenkins docker 映像是使用脚本构建的,该脚本将文件从 /usr/share/jenkins/ref/
目录复制到 jenkins 主目录。
我正在尝试使用 Dockerfile
创建自定义 docker 图像。在我的 Dockerfile 中,我已经安装了 ansible,我可以从早期的经验中确认这是有效的,但是当我使用命令 ansible-galaxy
来安装特定的 role
或 collection
(在这种情况下是集合)它没有存储在安装路径中。
DOCKER 构建的输出:
(Previous steps works)
...
Step 11/11 : RUN ansible-galaxy collection install community.vmware
---> Running in e222fee67b89
Process install dependency map
Installing 'community.vmware:1.1.0' to '/home/me/.ansible/collections/ansible_collections/community/vmware'
当我尝试从这个图像 运行 一个容器时,路径 /home/me/.ansible/collections/ansible_collections/community/vmware
不存在,所以在 运行 连接容器之后我必须使用 docker exec
并手动 运行 命令 ansible-galaxy collection install community.vmware
.
任何帮助将不胜感激。
谢谢。
在构建图像本身时,我没有使用 运行 ansible-galaxy
命令,而是将 ansible 集合从 GitHub 拉到我的计算机,然后将集合复制到 /usr/share/jenkins/ref/
。继 Jenkins docker documentation.
COPY .ansible/collection /usr/share/jenkins/ref/
jenkins docker 映像是使用脚本构建的,该脚本将文件从 /usr/share/jenkins/ref/
目录复制到 jenkins 主目录。