개발/오류조치 및 팁

Docker로 실행한 ubuntu에서 source ~/.bashrc가 실행되지 않는 문제

안녕진 2022. 2. 2. 17:31

개인 공부 목적으로, 정확하지 않은 정보가 있을 수 있습니다.

상황

  1. ubuntu image를 다운로드 한 후
  2. docker run --volume (내컴퓨터디렉토리):/root ubuntu /bin/bash 로 실행하여
  3. nvm 설치 후, nvm 명령어를 적용시키기 위해 source ~/.bashrc를 실행하려고 보니 ~/.bashrc파일이 없다.

문제 이해

docker에서 접속한 경우 자동으로 root 계정으로 로그인 된다.
ubuntu에서 계정을 만들면 홈 디렉토리에 bashrc라는 파일이 생기는데,
root 계정의 홈 디렉토리는 /root 이므로, /root 디렉토리 하위에 .bashrc 파일이 생겨야 한다. (/root/.bashrc)
그런데 상황 2에서 (내컴퓨터디렉토리)와 root 디렉토리를 --volume 옵션을 통해 연결했다.
(연결하면 root 디렉토리가 (내컴퓨터디렉토리)로 덮어씌워진다.)
(내컴퓨터디렉토리)에는 .bashrc 파일이 없기 때문에, root 디렉토리에 덮어씌울 때 .bashrc 파일이 사라지는 것 같다.


해결

.bashrc 파일을 만들어줘도 되지만, volume 연결 시 /root 하위에 workspace 라는 디렉토리를 만들어서 해결했다.
--volume (내컴퓨터디렉토리):/root => --volume (내컴퓨터디렉토리):/root/workspace