gpt4 book ai didi

docker - 更改基础 docker 镜像的默认命令

转载 作者:行者123 更新时间:2023-12-04 20:07:10 27 4
gpt4 key购买 nike

我从 docker hub 下载了 ubuntu 基础镜像。现在我正在尝试基于 ubuntu 镜像构建一个新镜像。但是,我希望 ubuntu 镜像的默认命令是“/bin/bash -c”而不是“/bin/sh”,这样当我在 Dockerfile 中使用 RUN 时,它会访问 bash 而不是 sh。请注意,我说的是同一图像的默认命令,而不是我要构建的图像。

最佳答案

我认为 ubuntu 中没有默认命令图片。当你跑

$ docker run ubuntu echo hi
hi

它运行 ["/bin/echo", "hi"] .您可以通过运行来验证
$ docker run ubuntu set
2014/06/20 08:38:54 exec: "set": executable file not found in $PATH
set是 shell 中的内置命令,但 docker 尝试将其作为外部命令运行。

如果要将默认 shell 从 dash 更改为 bash,可以使用固定符号链接(symbolic link)创建图像。这是一个 docker 文件:
FROM ubuntu
RUN ln -sf /bin/bash /bin/sh

[编辑]

我才明白你在说什么。我不知道您是否可以更改 RUN 的默认值命令,但您可以像这样显式使用/bin/bash :
RUN /bin/bash -c ...

关于docker - 更改基础 docker 镜像的默认命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24317603/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com