티스토리 뷰

docker를 써보면서 image를 run 해서 설치 및 실행을 해봤다. 하지만 이건 docker 내부 Container 에 설치가 되는 것이기 때문에 host에서 설치된 내용에 대해 찾아봐도 찾을수가 없다. (설치 시 디렉토리 마운트를 하지 않았을 경우) 

docker를 통해 jenkins를 설치했고 그 jenkins에 접속을 하니 최초 비밀번호를 적어 넣으라는 화면이 나왔다. 

/var/jenkins_home/secrets/initialAdminPassword 이곳에서 password 가지고 와서 입력을 하라고 나온다. 하지만 서버에서 해당 경로를 찾으면 찾을 수 없다고 나온다. 왜냐하면 docker 안에서 이루어지고 있는 일들이기 때문이다. 내가 서버에서 docker에 관해서 찾을수 있는건 docker의 껍데기뿐인것이다. 이 껍데기 안으로 들어가보자.  

 

docker에 여러가지 이미지가 이미 설치가 되어 있다고 치고 진행을 하자. 일단 어떤게 설치가 되어있나 보자. 

 

$ docker ps -a

 

 

jenkins, sonarqube, gitlab 등등의 image가 설치가 되어 있다. 각각의 Container에 설치가 되어 있다고 보면 된다. 이중에 Container에 들어가서 작업을 할때 눈여겨봐야하는 항목은 Container_ID 와 Names 이다. 

 

 

Container에 접속하기 

$ docker exec -it jenkins /bin/bash

 

아까 잠시 나온 jenkins에서 확인할 항목은 /var/jenkins_home/secrets/initialAdminPassword 이다. 이것을 확인하기 위해서 jenkins container로 들어가기 위한 방법이다. jenkins라는 name을 쳐서 들어가도 되고 Container_ID 를 name 대신 치고 들어가도 된다.

exec는 container 내부로 명령어를 전송하겠다는 명령어이다. 

-it 옵션은 i는 표준입출력, t는 가상 tty를 통해 접속하겠다는것이다. 두개는 세트로 같이 써야 한다. 

/bin/bash는 Container 안쪽의 bash shell을 사용하겠다는 것이다. 즉 linux shell을 사용하겠다는 것이다. 

 

 

이런식으로 Container의 내부로 들어갈 수 있다. 이 안에서는 /var/jenkins_home/secrets/initialAdminPassword 을 찾을 수 있다. 원하는 작업을 수행하고 빠져 나가는 방법은 다음과 같다. 

 

Container에서 빠져나오기 

$ exit

 

이렇게 간단하게 Container 들어가고 나가고를 할수 있다. 

 

끝!

댓글
최근에 올라온 글
최근에 달린 댓글
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31