我无法通过网络搜索site:stackoverflow.com dockerfile RUN fs changes not persisted
找到那些特殊之处。
我做了Dockerfile
,并想通过RUN
对图片进行一些更改。首先,我想更改文件属性,但是启动容器中没有更改。我发现此帖子大约涉及docker
的{{1}}错误和解决方法:https://serverfault.com/questions/772227/chmod-not-working-correctly-in-docker。但是,现在我只是尝试通过chmod
中的RUN touch /path/file
创建一个文件,并且已经在下一个命令(据我了解文档,为docker的下一层)上的更改(该文件)消失了。据我所知,否则Dockerfile
会如何工作,因为它将对映像中的文件系统进行更改...为什么该特定apt install
的结果不持久?下面的文档说的相反(或者我误解了RUN
的含义):
https://docs.docker.com/engine/reference/builder/:
RUN指令将在新的层上执行任何命令 当前图像并提交结果。结果承诺 图像将用于Dockerfile中的下一步。
这里是commit
的输出(请参见步骤6和7;创建了dockeruser, btw ):
docker build --no-cache -t yandex:user5 yandex2/
答案 0 :(得分:1)
答案 1 :(得分:0)
解决方法是使用COPY
docker doc
COPY path/to/local/file /var/loadtest/chmodtest.txt