CI CD InfraStructure/Docker

Docker 컨테이너로 Jenkins 설치 및 실행

유혁스쿨 2023. 7. 7. 11:01
728x90
반응형

1. Docker에 Jenkins 이미지 다운로드

 docker pull jenkins/jenkins

CMD 명령프롬프트에 위 명령어를 입력한다.

jenkins/jenkins의 앞의 내용은 만들고자 하는 계정 뒤의 내용은 Repository의 이름이다.

jenkins계정의 jenkins Repository라고 이해하면 된다.

Repository는 일종의 자료가 저장되는 공간이다.

입력하고 나면 jenkins가 설치되어 있지 않으면 jenkins 이미지를 자동으로 다운로드 한다.

 

 

2. 도커에서 젠킨스를 실행

docker run -d -v jenkins_home:/var/jenkins_home -p 8088:8080 -p 50000:50000 --restart=on-failure --name jenkins-server jenkins/jenkins:lts-jdk11

위와같은 명령어로 도커에서 젠킨스를 설치한 뒤 실행한다.

 

run : 도커에서 image를 생성하는 커맨드

-p : publish 옵션 컨테이너 내부 포트를 컨테이너 바깥 서버에서 어떻게 접속해서 사용할것인지 나타내는 설정

  1. 컨테이너 바깥에서 8088(기본값 8080)이라는 포트를 사용하여 접속하면 컨테이너 내부로 8080으로 접속한다.
  2. 컨테이너 외부에서 50000을 호출하면 컨테이너 내부에서 50000으로 응답한다.

--restart=on-failure : faile했을 경우 restart한다.

-v jenkins_home:/var/jenkins_home : 

  • -v : Volune  로컬에서 사용하는 Docker의 실행 환경에서 어떠한 디렉토리와 Docker에 있는 디렉토리와 Mount(연결)작업을 할것인지에 대한 설정
  • Mount를 하지 않을 경우 Docker내부에서 발생된 데이터는 Docker내부에 저장되기 때문에 Docker가 삭제되면 해당 데이터가 같이 삭제된다. 따라서 Docker내부에 저장된 데이터값을 삭제되지 않게하기위해 어딘가에 보관하기 위해 설정한다. Docker가 실행되는 외부에 해당하는 폴더 경로(/var/jenkins_home)를 연결해서 Link를 연결하는 작업이다.

jenkins/jenkins:lts-jdk11 : docker에서 사용하는 jenkins계정 이름 / repository 이름

lts-jdk11 : 사용하려는 tag이름

 

--name jenkins-server : 만들고자 하는 컨테이너에 이름을  jenkins-server로 부여

부여하지 않으면 Docker가 랜덤하게 이름을 생성한다.

(Random한 이름만 놓고 봤을 때 해당하는 컨테이너가 무엇인지 알수 없다는 뜻이므로 이름을 부여하는것을 권장한다.)

 

3. Docker 프로세스 정상동작 확인

docker ps

STATUS를 보면 현재 Docker가 Up상태인 것을 확인할 수 있다.

 

4. docker logs를 통해 password를 확인한다.

docker logs jenkins-server

위 명령어를 입력하면 콘솔에 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:

[____________password____________]

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

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

위와같은 내용이 콘솔에 입력되고 [대괄호] password에 출력되는 내용이 jenkins에 초기 접근할때 unlock을 하기위한 password이므로 복사해서 기억해둬야한다.

 

 

5.  브라우저를 열고 주소창에 다음과같이 입력하여 접속한다.

 

6. Getting Started - Unlock Jenkins

접속하게되면 Unlock Jenkins화면이 브라우저에 출력되고 Administrator password에 이전에 복사한 패스워드를 입력한 후 continue 버튼을 누른다.

 

7. GettingStarted - Customize Jenkins

Install suggeted plugins : 초기 플러그인 모두 설치

 

8. Getting Started - 설치 진행화면

설치화면

9. Getting Started - 계정 생성

사용하고자 하는 계정 정보를 입력하고 Save and Continue를 한다.

 

10. 접속하고자 하는 URL 확인

Save and Finish를 클릭

 

Start using Jenkins를 클릭

 

11. 초기 화면에서 Jenkins 환경설정 진행

좌측 사이드바에서 Jenkins 관리 클릭

 

12. 우측화면의 Tools 클릭

설정은 추후 진행한다.

 

이상으로 Docker에 Jenkins를 다운로드하고 실행하는 과정에 대한 포스팅을 마칩니다. 감사합니다.

 

 

728x90
반응형

'CI CD InfraStructure > Docker' 카테고리의 다른 글

[Docker] SonarQube 인스톨 및 Maven 빌드  (0) 2023.07.12