Docker 로 Jenkins 운영하기
· 5 min read
Overview
Docker 를 사용하여 Jenkins 를 설치하고 운영하는 법을 설명한다.
Docker 를 사용하여 Jenkins 를 설치하고 운영하는 법을 설명한다.
Docker 컨테이너는 격리된 환경에서 돌아가기 때문에 기본적으로 다른 컨테이너와 통신이 불가능하다. 하지만 여러개의 컨테이너를 하나의 Docker 네트워크에 연결시키면 서로 통신이 가능해진다. 이번에는 서로 다른 컨테이너들간에 통신을 위해서 네트워크를 어떻게 구성해야하는지 알아본다.
도커 컨테이너는 기본적으로 완전 격리상태이기 때문에 기본적으로는 컨테이너 내부의 데이터를 호스트 머신에서 사용할 수 없다. 이 말은 곧, 컨테이너의 라이프 사이클에 내부 데이터가 완전히 의존하는 상태라는 것이다. 좀 더 쉽게 말하면 컨테이너가 사라지는 순간 데이터도 같이 사라지게 된다.
그럼 로그나 데이터베이스의 중요한 정보 등 컨테이너의 데이터를 컨테이너의 라이프사이클과는 관계없이 영구적으로 보관해야할 필요가 있는 경우에는 어떻게 해야할까?
바로 이럴 때 volume
을 사용할 수 있다.
쿠버네티스는 다음을 기능들을 제공한다.
자세한 정보는 공식 문서에서 잘 설명해주니 공식 문서를 참조하자.
쿠버네티스를 실행할 수 있는 방법에는 여러가지가 있지만 공식 사이트에서는 minikube 를 사용하여 진행한다. 이 글에서는 Docker desktop 을 사용하여 쿠버네티스를 활용하는 방법을 정리하고 있다. minikube 를 사용하는 방법을 알고 싶다면, 공식 사이트를 참고하시면 되겠다.
minikube 는 일단 간단하게 짚어보고 넘어가자.