본문 바로가기

리눅스

Docker Compose를 사용하여 Jenkins를 설치하고 실행하는 방법

반응형

Docker Compose를 사용하여 Jenkins를 설치하고 실행하는 방법

1. Docker Compose 파일 생성

docker-compose.yml 파일을 생성하고 다음 내용을 추가합니다.

vim docker-compose.yml
version: '3.9'
services:

  jenkins:
    image: anti1346/jenkinsindocker:latest
    container_name: jenkins
    restart: always
    hostname: jenkins
    #privileged: true
    #user: root
    volumes:
      - /usr/share/zoneinfo/Asia/Seoul:/etc/localtime:ro
      - /var/run/docker.sock:/var/run/docker.sock
      - ./jenkins_home:/var/jenkins_home
    ports:
      - 8080:8080
      - 50000:50000
    networks:
      - jenkinsnet

networks:
  jenkinsnet:

이 파일은 Jenkins LTS 이미지를 사용하며 호스트의 8080 포트를 컨테이너의 8080 포트로 매핑하고 호스트의 ./jenkins_home 디렉토리를 컨테이너의 /var/jenkins_home에 볼륨으로 마운트합니다. 또한 jenkinsnet이라는 사용자 정의 네트워크를 생성합니다.

2. Docker Compose를 사용하여 Jenkins 컨테이너 실행

다음 명령어를 사용하여 Docker Compose를 통해 Jenkins 컨테이너를 실행합니다.

docker-compose up -d

3. Jenkins 초기 암호 확인

Jenkins 컨테이너가 실행되면 초기 암호를 얻기 위해 로그를 확인합니다.

docker logs jenkins
*************************************************************
*************************************************************
*************************************************************

Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:

d539ff93d9184b4dad3e613ef161129e

This may also be found at: /var/jenkins_home/secrets/initialAdminPassword

*************************************************************
*************************************************************
*************************************************************

로그 중에 "Please use the following password to proceed to installation"라는 메시지와 함께 초기 암호가 표시됩니다.

 

(또는) /var/jenkins_home/secrets/initialAdminPassword 파일을 통해 초기 암호를 확인 할 수 있습니다.

docker-compose exec jenkins sh -c "cat /var/jenkins_home/secrets/initialAdminPassword"
$ docker-compose exec jenkins sh -c "cat /var/jenkins_home/secrets/initialAdminPassword"
d539ff93d9184b4dad3e613ef161129e

4. Jenkins 설정 및 플러그인 설치

웹 브라우저에서 http://localhost:8080에 접속하고, 초기 암호를 입력한 후 Jenkins 설정을 마무리합니다.

http://localhost:8080

jenkins1
jenkins2

필요한 플러그인들도 설치합니다.

jenkins3
jenkins4
jenkins5
jenkins6
jenkins7

Docker 플러그인 설치

Jenkins 대시보드로 이동하고 "Manage Jenkins" -> "Manage Plugins" -> "Available" 탭으로 이동하여 "Docker" 플러그인을 검색하고 설치합니다.

jenkins9

Jenkins Job 설정

새로운 Jenkins Job을 만들고, 해당 Job의 구성에서 "Build" 섹션에 "Docker Build and Publish" 옵션을 추가합니다.

Repository Name: Docker Hub에 업로드할 이미지의 이름

Tag: 이미지의 태그

Docker Registry URL: Docker Hub의 레지스트리 URL (기본값은 Docker Hub)

Jenkins Job 실행

Jenkins Job을 실행하여 Docker 파일을 빌드하고 Docker Hub에 업로드합니다.

이렇게 하면 Docker Compose를 사용하여 Jenkins를 설치하고 실행하고, Jenkins를 통해 Docker 파일을 빌드하고 Docker Hub에 업로드할 수 있습니다. 이 예제는 간단한 설정이며, 실제 운영 환경에 맞게 필요한 설정을 추가하실 수 있습니다.

 

728x90
반응형