如何在Dockerfile中为Docker容器设置bash别名?

我是Docker的新手。我发现我们可以使用Dockerfile中的ENV指令设置环境变量。但是,如何在Dockerfile中为长命令设置bash别名?

回答:

基本上就像您经常做的那样,将其添加到用户的.bashrc

FROM foo

RUN echo 'alias hi="echo hello"' >> ~/.bashrc

和往常一样,这仅适用于交互式外壳:

docker build -t test .

docker run -it --rm --entrypoint /bin/bash test hi

/bin/bash: hi: No such file or directory

docker run -it --rm test bash

$ hi

hello

对于非交互式外壳,您应该创建一个小脚本并将其放在路径中,即:

RUN echo -e '#!/bin/bash\necho hello' > /usr/bin/hi && \

chmod +x /usr/bin/hi

如果您的别名使用参数(即hi Jim-> hello Jim),则只需添加"$@"

RUN echo -e '#!/bin/bash\necho hello "$@"' > /usr/bin/hi && \

chmod +x /usr/bin/hi

以上是 如何在Dockerfile中为Docker容器设置bash别名? 的全部内容, 来源链接: utcz.com/qa/415882.html

回到顶部