如何定制Molecular';docker的形象?
我用分子来测试一些可能的角色。我想将一些文件推送到用于测试的docker映像。为此,我将测试文件放在molecular文件夹中,并将ADD/COPY命令添加到Dockerfile.j2文件中。我的文件夹结构如下所示:如何定制Molecular';docker的形象?,docker,ansible,dockerfile,molecule,Docker,Ansible,Dockerfile,Molecule,我用分子来测试一些可能的角色。我想将一些文件推送到用于测试的docker映像。为此,我将测试文件放在molecular文件夹中,并将ADD/COPY命令添加到Dockerfile.j2文件中。我的文件夹结构如下所示: - ansible-role-foo/ - molecule/ - default/ - Dockerfile.j2 - myTestFile.txt - ... Dockerfile.j2: # Molecule managed
- ansible-role-foo/
- molecule/
- default/
- Dockerfile.j2
- myTestFile.txt
- ...
Dockerfile.j2:
# Molecule managed
...
RUN mkdir -p /my/path
COPY myTestFile.txt /my/path
启动分子--debug converge
时,出现以下错误:
COPY failed: stat /var/lib/docker/tmp/docker-builder266739241/myTestFile.txt: no such file or directory
我用的是分子2.18.1
如何在Molecular的上下文中正确地将myTestFile.txt包含在docker图像中
/var/lib/docker/tmp/docker-builder266739241/myTestFile.txt
显然,你的问题有答案。你应该把你的文本文件放在上面提到的目录中,看看它是否通过。否则,您应该尝试给出文本文件所在的完整路径。
您也可以直接内联内容:
RUN echo $'\n\
my file content\n\
' > /tmp/myfile
了解如何在Molecular文件夹的上下文中提供绝对路径是很有意思的。否则,该设置将无法重复使用。显然,我们不能简单地
复制/home/myusername/myprojects/molecular/default/myTestFile.txt/my/path
。我们不能在tmp目录中提供该文件。