[Docker] Jenkins 설치

seoyoon·2022년 4월 20일
0
post-thumbnail

0. 개요


Docker로 Jeknis 컨테이너를 띄워보도록 하겠습니다.
젠킨스는 소프트웨어 개발 시 지속적으로 통합 서비스를 제공하는 툴입니다. CI(Continuous Integration) 툴 이라고 표현하고 있고

다수의 개발자들이 하나의 프로그램을 개발할 때 버전 충돌을 방지하기 위해 각자 작업한 내용을 공유영역에 있는 저장소에 빈번히 업로드함으로써 지속적 통합이 가능하도록 도와줍니다.

1. Jenkins 설치

1) 디렉토리 생성

mkdir -p /data/jenkins
chmod 666 /data/jenkins

2) Jenkins 시작

docker run -itd --name jenkins -p 8080:8080 -p 50000:50000 -v /data/jenkins:/var/jenkins_home -v /var/run/docker.sock:/var/run/docker.sock -e TZ=Asia/Seoul -u root jenkins/jenkins:latest

cf. 옵션 설명

-v /data/jenkins:/var/jenkins_home
local volume의 /datajenkins 디렉토리와 container volume의 /var/jenkins_home 디렉토리 매핑
-v /var/run/docker.sock:/var/run/docker.sock
제일 중요한 옵션
docker in docker를 구현하기 위해 사용하는 옵션
-u root
Docker 사용자를 root로 설정
-p 8080:8080 -p 50000:50000
local port와 container port 연결
8080은 Jenkins 기본 port
50000은 Jenkins slave port
-e TZ=Asia/Seoul
jenkins 내의 timezone 설정

3) 컨테이너 생성 확인

docker ps

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e1bd76409c9f jenkins/jenkins:latest "/sbin/tini -- /usr/…" 2 seconds ago Up 1 second 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp, 0.0.0.0:50000->50000/tcp, :::50000->50000/tcp jenkins

4) 브라우저에서 컨테이너 접속

IP:8080

브라우저(Chrome, Edge...)로 위의 주소 접속시 아래와 같이 비밀번호를 입력하고 뜹니다.

cat /data/jenkins/secrets/initialAdminPassword

위에서 출력된 비밀번호를 입력합니다.

좌측의 Install suggested plugins을 입력합니다.

플러그인이 설치가 완료 되면 계정 생성을 합니다.

계정 생성이 완료 되면 Jenkins를 시작할 모든 준비가 끝났습니다.

profile
Backend Developer

1개의 댓글

comment-user-thumbnail
2024년 4월 15일

안녕하세요! 글 잘 읽었습니다. 무슨 이유로 docker in docker로 구성하셨는지 궁금합니다!

답글 달기