我运行了以下命令来更改podman容器中包含的文件中的一些行:
# RUN THE IMAGE
podman run -it opensearchproject/opensearch-dashboards:1.2.0 /bin/bash
# READ CONTENT
cat config\opensearch_dashboards.yml
# OLD CONTENT
while IFS='' read -r a; do
echo "${a//localhost/0.0.0.0}"
done < opensearch_dashboards.yml > opensearch_dashboards.yml.t
mv opensearch_dashboards.yml{.t,}
# READ NEW CONTENT
cat config\opensearch_dashboards.yml
# NEW CONTENT LOOKS FINE, CLOSE SESSION
exit
# RUN IMAGE, AGAIN
podman run -it opensearchproject/opensearch-dashboards:1.2.0 /bin/bash
# READ CONTENT AGAIN
cat config\opensearch_dashboards.yml
# OLD CONTENT SHOWS UP我遗漏了什么?我想我可以更新图像,但它不起作用。每次替换成功,它就会着火。我对集装箱不熟悉,我觉得自己被卡住了。
发布于 2022-02-07 15:49:09
在容器中进行更改不会更新底层的映像。容器有一个只存在于容器生存期的短暂文件系统--当容器退出时,文件系统就消失了。
图像实际上是只读的。如果要对图像进行更改,请使用适当的Dockerfile创建一个新的图像。您可能会从以下几个方面开始:
FROM opensearchproject/opensearch-dashboards:1.2.0
...您可以用适当的RUN或COPY命令替换RUN或COPY命令,以修改映像以满足您的需要。
https://stackoverflow.com/questions/71020916
复制相似问题