인프런 커뮤니티 질문&답변

레오나님의 프로필 이미지
레오나

작성한 질문수

Jenkins를 이용한 CI/CD Pipeline 구축

실습4) Docker Container에 배포하기 ①

ssh관련 질문드립니다.

작성

·

497

0

안녕하세요.

윈도우 환경에서 도커 ssh server 컨테이너를 실행시키고

ssh root@localhost -p 10022가 되지 않아 ssh root@127.0.0.1 -p 10022로 하니 되어서 8080 tomcat 이미지를 실행시키니 이미 사용하고 있는 포트라고 실행이 되지 않았습니다.

SSH로 접속 후 docker ps로 확인을 해보니 제 로컬PC에 사용하던 이미지와 컨테이너가 그대로 남아있었습니다. (8080포트는 젠킨스로 사용하고 있어 실패한 듯 합니다.) 실행이 되지 않은 이유는 root@localhostroot@127.0.0.1의 차이 떄문일까요??

답변 1

0

Dowon Lee님의 프로필 이미지
Dowon Lee
지식공유자

안녕하세요, 이도원입니다.

현재 실행 중인 SSH서버가 DooD 방식인지 DinD 방식인지 확인해 보셔야 할 것 같습니다. 두방식의 차이를 간략하게 말씀드리면, DooD방식은 Host의 도커를 그대로 공유하여 사용하는 방식이기 때문에, Jenkins와 같이 Host에서 기동한 Docker 컨테이너가 보이게 됩니다. 두번째 방식인 DinD 방식은 Host와는 별개의 Docker가 실행되기 때문에, 실행중인 컨테이너가 공유되지 않고, Host에서 기동중인 다른 컨테이너 들과의 포트 충돌도 발생하지 않습니다. 말씀하신 localhost, 127.0.0.1의 문제라기 보다는 Docker의 구동 방식과 관련이 있었던것 같습니다.

감사합니다.

레오나님의 프로필 이미지
레오나

작성한 질문수

질문하기