Docker Compose로 Jenkins 설치 및 사용하기

Docker Compose로 Jenkins 설치 및 사용하기

DevOps
Docker Compose로 Jenkins 설치 및 사용하기
Author

gabriel yang

Published

October 7, 2024


Docker Compose로 Jenkins 설치 및 사용하기

Jenkins는 지속적 통합(CI) 및 지속적 배포(CD)를 위한 자동화 서버로, Docker Compose를 사용하여 간편하게 설치하고 설정할 수 있습니다. 이 글에서는 Docker Compose를 이용해 Jenkins를 설치하고, 기본적인 설정을 하는 방법을 단계별로 설명하겠습니다.

1. 사전 준비

요구 사항

  • Docker가 설치되어 있어야 합니다.
  • Docker Compose가 설치되어 있어야 합니다.

Docker 및 Docker Compose 설치

Docker와 Docker Compose가 설치되어 있지 않다면, 아래의 명령어를 사용하여 설치합니다.

# Docker 설치 (Ubuntu 기준)
sudo apt update
sudo apt install -y docker.io
sudo systemctl start docker
sudo systemctl enable docker

# Docker Compose 설치
sudo apt install -y docker-compose

2. 프로젝트 디렉토리 생성

먼저 Jenkins를 위한 디렉토리를 생성하고 해당 디렉토리로 이동합니다.

mkdir jenkins-docker
cd jenkins-docker

3. docker-compose.yml 파일 생성

Jenkins와 필요한 플러그인, 데이터 저장소를 설정할 docker-compose.yml 파일을 생성합니다. 아래의 내용을 복사하여 docker-compose.yml 파일로 저장합니다.

version: '3.8'

services:
  jenkins:
    image: jenkins/jenkins:lts
    container_name: jenkins
    ports:
      - "8080:8080"
      - "50000:50000"
    volumes:
      - jenkins_home:/var/jenkins_home
    environment:
      JENKINS_OPTS: --httpPort=8080

volumes:
  jenkins_home:

설명

  • image: 사용할 Jenkins의 Docker 이미지를 지정합니다.
  • container_name: 생성할 컨테이너의 이름을 지정합니다.
  • ports: 호스트와 컨테이너 간의 포트 매핑을 설정합니다.
  • volumes: Jenkins 데이터를 저장할 영구적인 볼륨을 설정합니다.

4. Jenkins 실행

docker-compose.yml 파일이 준비되었으면, 아래의 명령어를 실행하여 Jenkins를 시작합니다.

docker-compose up -d

-d 플래그는 백그라운드에서 실행하도록 설정합니다.

5. Jenkins 초기 설정

Jenkins가 정상적으로 실행되면, 브라우저에서 http://localhost:8080에 접속합니다. 초기 설정을 위해 다음 단계를 따릅니다.

5.1. 초기 관리자 비밀번호 확인

Jenkins를 처음 실행하면 관리자 비밀번호를 입력하라는 화면이 나타납니다. 아래의 명령어로 비밀번호를 확인할 수 있습니다.

docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword

출력된 비밀번호를 복사하여 브라우저에 입력합니다.

5.2. 플러그인 설치

비밀번호를 입력하면 플러그인 설치 화면이 나타납니다. “설치할 플러그인 선택” 또는 “기본 설치”를 선택하여 필요한 플러그인을 설치합니다.

5.3. 관리자 사용자 설정

플러그인 설치가 완료되면 관리자 사용자 정보를 입력합니다. 사용자 이름, 비밀번호, 이메일 주소 등을 입력하고 저장합니다.

5.4. 대시보드 접근

모든 설정이 완료되면 Jenkins 대시보드에 접속할 수 있습니다. 이제 Jenkins를 사용하여 CI/CD 파이프라인을 설정하고 관리할 수 있습니다.

6. Jenkins 중지 및 삭제

Jenkins를 중지하고 삭제하려면 다음 명령어를 사용합니다.

# Jenkins 중지
docker-compose down