작성
·
483
0
강사님 좋은 강의 정말 잘 듣고 있습니다. section2 까지 달렸는데, 그동안 모호하게 알고 있던 포트 포워딩 등 디테일한 내용까지 알려주셔서 얻어가는게 많은 강의였습니다.
질문)
Jenkins 에서 Docker container 에 배포하기 위해 ssh 를 거치는 아키텍쳐를 설명해주셨습니다. 젠킨스에서 곧바로 도커로 배포하는게 아닌 ssh 를 거치는 이유가 무엇인지 알 수 있을까요?
ssh 란 이름 자체로 유추해보건대 보안을 위한 과정이라 생각이 드는데, 혹시 다른 기술적 이유도 있는지 궁금합니다 :)
좋은 강의 정말 감사합니다. 얼른 마저 다 듣고싶네요
답변 1
1
안녕하세요, 이도원입니다.
Docker 컨테이너를 기동하기 위한 Docker 엔진(서버)가 Jenkins와 같은 서버에 설치해 있다면, 적절한 권한을 갖는다는 가정에서 직접 배포가 가능할 수도 있습니다. 다만, 강의에서 설정한 환경은 다른 PC(특히, Docker 컨테이너 형태로 기동되고 있는 다른 VM이라 가정)이기 때문에, 해당 PC에 접속하기 위해 ssh가 필요하고, 해당 PC에 설치된 Docker를 제어하기 위해 ssh에 필요한 명령어를 전달하여 제어하게 됩니다. Jenkins에서 빌드된 결과물을 ssh를 통해 전송한 다음, 해당 PC에서 Docker 컨테이너를 위한 이미지로 생성하거나, 컨테이너를 기동하는 방식이라고 이해 하시면 좋을 것 같습니다.
감사합니다.