我想用plenv
在 docker 镜像中有 perl 5.16。 apt-get
只得到 5.14。plenv
将在 $HOME/.plenv/versions/5.16.2/
中安装 perl ,我需要在 $HOME/.profile
中添加一些行:
export PATH="$HOME/.plenv/bin:$PATH"
eval "$(plenv init -)"
然后运行
plenv shell 5.16.2
切换到新版本。但是在Dockerfile中,我需要写
source $HOME/.profile && plenv shell 5.16.2
在我运行一些 perl 命令之前,everyline。 docker 没有执行 $HOME/.profile
,是免登录shell吗?虽然我可以在每个
RUN
之前写这样的命令, 我如何才能在 CMD
中执行此操作线?docker 可以通过一些设置解决这个问题吗?
最佳答案
您可以使用 ENTRYPOINT 命令在每次执行之前添加一些内容,或者您可以简单地将 .profile 移动到 .bashrc 中。
确实,docker 是一个免登录 shell,它不会运行 upstart,只需执行请求的进程。
关于perl - 如何在 Dockerfile 中运行 pleenv/rbenv?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18463184/