bash – 将数据写入Dockerfile中的文件

前端之家收集整理的这篇文章主要介绍了bash – 将数据写入Dockerfile中的文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个shell脚本script.sh,它将一些行写入文件

#!/usr/bin/env bash
printf "blah 
blah 
blah 
blah\n" | sudo tee file.txt

现在在我的Dockerfile中,我添加了这个脚本并运行它,然后尝试添加生成的file.txt:

ADD script.sh .
RUN chmod 755 script.sh && ./script.sh 
ADD file.txt . 

当我执行上述操作时,我只是在引用ADD file.txt时出错.命令:

lstat file.txt: no such file or directory

为什么docker找不到我的shell脚本生成文件
我能在哪里找到它?

当你运行chmod 755 script.sh&& ./script.sh它实际上在docker容器中执行此脚本(即:在docker层中).

当你添加file.txt.您尝试在docker容器内的本地文件系统上添加文件(即:在新的docker层中).

你不能这样做,因为你的计算机上不存在file.txt.

事实上你已经在docker里面有这个文件,试试docker run –rm -ti mydockerimage cat file.txt你应该看到它显示内容

原文链接:https://www.f2er.com/docker/436673.html

猜你在找的Docker相关文章