在容器死亡之前将文件从容器复制到主机
copy file from container to the host before the container dies
我是 docker 容器的新手。我正在尝试构建一个 运行 jar 文件的图像。我想将输出文件传递给主机进行进一步处理,但容器在完成命令后立即退出。
1-这个问题的最佳实践是什么?
2- 有什么方法可以动态传递文件名而不是在 docker 文件中进行硬编码。
这是我的 Dockerfile:
FROM mybase:latest
VOLUME /root/:/var/myVol/
EXPOSE 8080
ADD mydir/test.jar /tmp/test.jar
CMD bash -c 'java -jar /tmp/test.jar > /var/myVol/output.json'
您可以使用 -v 选项将输出文件挂载为卷。您的程序将直接写入主机上的输出文件,无需在任何地方复制任何内容
但是请注意,-v
选项已知为 extremely slow。
我是 docker 容器的新手。我正在尝试构建一个 运行 jar 文件的图像。我想将输出文件传递给主机进行进一步处理,但容器在完成命令后立即退出。 1-这个问题的最佳实践是什么? 2- 有什么方法可以动态传递文件名而不是在 docker 文件中进行硬编码。 这是我的 Dockerfile:
FROM mybase:latest
VOLUME /root/:/var/myVol/
EXPOSE 8080
ADD mydir/test.jar /tmp/test.jar
CMD bash -c 'java -jar /tmp/test.jar > /var/myVol/output.json'
您可以使用 -v 选项将输出文件挂载为卷。您的程序将直接写入主机上的输出文件,无需在任何地方复制任何内容
但是请注意,-v
选项已知为 extremely slow。