Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何定制Molecular';docker的形象?_Docker_Ansible_Dockerfile_Molecule - Fatal编程技术网

如何定制Molecular';docker的形象?

如何定制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

我用分子来测试一些可能的角色。我想将一些文件推送到用于测试的docker映像。为此,我将测试文件放在molecular文件夹中,并将ADD/COPY命令添加到Dockerfile.j2文件中。我的文件夹结构如下所示:

- 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目录中提供该文件。