[docker] jenkins 서버 띄우는 방법

1/10/2025, 11:31:41 AM
dockerjenkins

오늘은 jenkins 서버를 docker로 띄우는 방법에 대해 알아보겠습니다.

도커 설치 여부 확인

docker --version

PC에 도커가 설치되어 있다면, 아래와 같이 버전 정보가 출력될 것입니다.

Docker version 24.0.2, build cb74dfc

jenkins 이미지 다운로드

docker pull jenkins/jenkins:lts

여기서 lts는 LTS(Long-Term Support) 버전을 의미합니다

jenkins 이미지가 잘 다운로드되었다면, docker images 명령을 실행했을 때 해당 이미지가 이미지 목록에 보일 것입니다.

jenkins 컨테이너 실행

아래 명령어로 jenkins 서버를 컨테이너로 실행합니다.

docker run -d \ --name jenkins \ -p 18080:8080 \ -p 50000:50000 \ -v jenkins_home:/var/jenkins_home \ --restart unless-stopped \ jenkins/jenkins:lts
  • -d: 컨테이너를 백그라운드 모드로 실행
  • --name: 컨테이너명을 jenkins로 설정
  • -p 18080:8080: 호스트의 18080 포트를 컨테이너의 8080 포트에 연결합니다. Jenkins 웹 UI는 기본적으로 컨테이너의 8080 포트에서 제공되므로, 위와 같이 설정하면 브라우저에서 http://localhost:18080으로 접속할 수 있습니다.
  • -p 50000:50000: 호스트의 50000 포트를 컨테이너의 50000 포트에 연결합니다. jenkins는 에이전트와의 통신에 50000 포트를 사용합니다.
  • -v jenkins_home:/var/jenkins_home: 호스트의 Docker 볼륨 jenkins_home을 컨테이너의 /var/jenkins_home 디렉터리에 마운트합니다. jenkins의 모든 데이터가 /var/jenkins_home에 저장되기 때문에, 이를 호스트 볼륨에 저장하여 데이터의 지속성을 보장합니다. 컨테이너를 삭제해도 데이터는 유지됩니다.
  • --restart unless-stopped: 컨테이너가 중단되거나 Docker 데몬이 다시 실행될 경우, 컨테이너를 자동으로 다시 시작합니다. 사용자가 명시적으로 docker stop으로 컨테이너를 중지한 경우에만 다시 시작하지 않습니다.

jenkins 초기화

jenkins를 처음 실행하면 초기 관리자 비밀번호가 필요합니다.

docker logs jenkins

위 명령으로 jenkins 컨테이너의 로그를 확인하면 관리자 비밀번호를 확인할 수 있습니다.

Please use the following password to proceed to installation:

비밀번호는 위 문구 바로 아래 줄에 있습니다.

그 다음에 브라우저에서 https://localhost:18010에 접속합니다. 접속하면 Unlock Jenkins 라는 페이지가 뜰 것인데, 위에서 확인한 관리자 비밀번호를 기입하고, continue 버튼을 누릅니다.

jenkins 초기 설정

그 다음 화면에서는 Install suggested plugins 버튼을 눌러 추천 플러그인들을 설치해줍니다.

jenkins 플러그인 설치

관리자 계정 생성

플러그인 설치가 끝난 다음에는 관리자 계정 만드는 화면으로 이동합니다. 관리자 계정을 생성합니다.

인스턴스 구성

Jenkins URL을 설정합니다. 저는 디폴트로 설정된 상태로 저장했습니다.

완료

jenkins 서버를 띄웠으니, 이제 http://localhost:18010에 접속하여 jenkins를 잘 사용하시면 됩니다.

Jenkins 서버 실행 완료