如何在Dockerfile中为Docker容器设置bash别名?
我是Docker的新手。我发现我们可以使用Dockerfile中的ENV指令设置环境变量。但是,如何在Dockerfile中为长命令设置bash别名?
回答:
基本上就像您经常做的那样,将其添加到用户的.bashrc
:
FROM fooRUN 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