2013-08-27 1 views
3

도커 이미지에 perl 5.16을 사용하려면 plenv을 사용하고 싶습니다. apt-get 만 5.14를 얻습니다. plenv$HOME/.plenv/versions/5.16.2/에 펄을 설치합니다, 나는 $HOME/.profile에 몇 줄을 추가해야합니다Dockerfile에서 plenv/rbenv를 실행하는 방법은 무엇입니까?

export PATH="$HOME/.plenv/bin:$PATH" 
eval "$(plenv init -)" 

그런 다음 새 버전으로 swith를 위해 plenv shell 5.16.2를 실행합니다.

그러나 Dockerfile에서 일부 perl 명령을 실행하기 전에 source $HOME/.profile && plenv shell 5.16.2 everyline을 작성해야합니다. 도커가 임원이 아니 었습니다 $HOME/.profile, 로그인하지 않은 쉘입니까?

RUN 전에 이러한 명령을 작성할 수 있지만 CMD 줄에서는 어떻게해야합니까?

도커가 일부 설정으로이를 해결할 수 있습니까?

답변

1

ENTRYPOINT 명령을 사용하여 각 실행 전에 무엇인가를 prepend하거나 .bashrc에서 .profile을 간단하게 이동할 수 있습니다.

사실, docker는 로그인하지 않은 쉘이며, 시작하지 않고 단순히 요청 된 프로세스를 실행합니다.

관련 문제