Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Install docker

Install docker-compose

...

Table of Contents

...

필수 설치

Java 11 설치

참고: Java11 설치 - Rhel 7,8

 

Nginx 설치

Jenkins를 설치 후 도메인으로 접근하기 위해서는 Web서버 필요

참고: Nginx 설치

Docker 설치

참고: Docker 설치

Docker Compose 설치

참고: Docker Compose 설치

Jenkins Root 폴더 생성

mkdir -p /app/jenkins

...

Jenkins 도커 설치

docker 컨테이너는 옵션값이 다양하므로 docker-compose-jenkins.yml 설치 권장

Option1. docker 컨테이너 설치

도커 컨테이너 생성 및 실행

docker run -d -p 8080:8080 --restart always --name jenkins -v /app/jenkins/jenkins-data:/var/lib/jenkins jenkins:2.60.3

젠킨스 설치 확인

docker ps

Option2. Docker Compose로 설치

docker-compose-jenkins.yml 파일 생성

vi docker-compose-jenkins.yml

설정 정보 입력

image: 젠킨스 도커 버전

...

...

...

Make directory

/app/jenkins

...

user: jenkins 실행할 유저 설정

port: 젠킨스 실행 포트:리눅스 포트

volumes: 젠킨스 설치경로 등 관련 파일 리눅스 물리 볼륨에 동기화

docker-compose-jenkins.yml

Expand
titledocker-compose-jenkins.yml
Code Block
version: '3.7'


services:


  jenkins:


    image: jenkins/jenkins:2.263.4-jdk11


    privileged: true


    user: root


    ports:

-

      - 8080:8080

-

      - 50000:50000


    container_name: jenkins


    volumes:

-

     - /app/jenkins:/var/jenkins_home

-

     - /var/run/docker.sock:/var/run/docker.sock

-

     - /usr/local/bin/docker:/usr/local/bin/docker

...

Docker compose로 jenkins container 생성 및 실행

docker-compose -f docker-compose-jenkins.yml up -d

Create nginx config file like jenkins.conf on /etc/nginx/conf.d

...

titlejenkins.conf

server {

listen 80;

listen 443;

server_name  jenkins.justten.io;

charset utf-8;

rewrite_log on;

client_max_body_size 50M;

location / {

proxy_pass http://127.0.0.1:8080;

proxy_http_version 1.1;

proxy_set_header Upgrade $http_upgrade;

proxy_set_header Connection 'upgrade';

proxy_set_header Host $host;

proxy_cache_bypass $http_upgrade;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-Proto http;

proxy_set_header X-Forwarded-Host $host;

proxy_set_header X-Forwarded-Server $host;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

...

proxy_send_timeout 300;

proxy_read_timeout 300;

send_timeout 300;

}

...

return    301 <https://$server_name$request_uri;>

}

}

Check jenkins

docker ps

Accessing the Jenkins Docker container

docker container exec -it jenkins bash

Accessing the Jenkins console log through Docker logs

docker container logs jenkins 

To Unlocking Jenkins

Find init password

...

Jenkins Docker에 설치 확인

docker ps

...

Jenkins docker 주요 명령어

Jenkins 실행

docker start jenkins

Jenkins 정지

docker stop jenkins

Jenkins 로그 확인

docker logs jenkins 

Jenkins container 삭제

도커 정지: docker stop jenkins

도커 컨테이너 삭제: docker rm jenkins

Jenkins image 삭제

  • Jenkins 컨테이너 삭제

  • docker images에서 jenkins ImageID 검색

  • docker rmi {Jenkins Image ID}

...

젠킨스 초기 설치

초기 비밀번호 확인

젠킨스 도커 bash로 진입

docker container exec -it jenkins bash

 

Write

vi Jenkins 초기 어드민 비밀번호 확인

cat /var/jenkins_home/secrets/initialAdminPassword

...

 

Open Jenkins

type initial password

...

Jenkins 접속 → 초기 비밀번호 입력

...

플러그인 설치

어드민 계정 생성

로그인