[NCP] CentOS7.8 서버에 docker 이미지로 jenkins 실행하기

layl__a·2023년 4월 20일
0

Jenkins

목록 보기
2/4

docker 환경 세팅


나는 root 사용자 말고 새로운 사용자를 추가하여 세팅하고자 했다.

adduser exam // exam 이라는 사용자 추가
passwd exam // exam 계정에 비밀번호 설정

이제 putty로 접속할 때 exam@[IP주소] 와 기본 포트를 입력하면 접속할 수 있다.

exam에 sudo 권한 주기

먼저 root 계정으로 진행해야 한다.

su
root 비번 입력 (나갈 때는 exit)
vim /etc/sudoers
// root ALL=(ALL) ALL 라인 밑 부분에 exam ALL=(ALL) ALL 라인 추가
esc + wq! 로 저장

selinux 끄기

sudo vim /etc/selinux/config
SELINUX = disabled // 이렇게 수정

기본 설정 업데이트

sudo yum install epel-release -y
sudo yum update -y
sudo reboot now

도커 설치

sudo yum install -y yum-utils

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y

sudo systemctl start docker

sudo systemctl enable docker

도커를 sudo 없이 이용

sudo usermod -aG docker ${USER}

이후, putty 재시작 필수

젠킨스 환경 세팅

firewalld 꺼져있고 비활성화 되어 있는지 확인

sudo systemctl stop firewalld

sudo systemctl disable firewalld

도커 설치 확인 및 도커 관련 초기화

# 컨테이너 삭제
docker rm -f $(docker ps -qa)

# 이미지 삭제
docker rmi -f $(docker images -qa)

# 안쓰는 네트워크 삭제
docker network prune -f

# 안쓰는 볼륨 삭제
docker volume prune -f

# 도커 프로젝트 삭제
sudo rm -rf /docker/projects
sudo rm -rf /docker_projects

젠킨스 설치

docker run \
  --name jenkins_1 \
  -p 8081:8080 \
  -e TZ=Asia/Seoul \
  -v /docker_projects/jenkins_1/var/jenkins_home:/var/jenkins_home \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /docker_projects/jenkins_1/data:/data \
  -u root \
  -d \
  --restart unless-stopped \
  jenkins/jenkins:lts
  • 첫째줄은 docker 를 실행한다
  • name 은 jenkins_1 이다
  • 8081 포트로 접속하면 서버에 들어갈 수 있다.
  • 환경 시간은 Asia/Seoul 이다
  • 컨테이너 내부의 /var/jenkins_home 폴더가 외부 폴더 /docker_projects/jenkins_1/var/jenkins_home 에 연결 된다. 볼륨은 밖으로 빼주어 이미지가 사라지더라도 남는다.
  • Docker socket 파일 위치 : /var/run/docker.sock 이다.
  • data 는 /docker_projects/jenkins_1/data 폴더와 연결된다.
  • 찾는 중
  • 종료되지 않는 한 항상 재시작한다
  • jenkins 이미지를 pull 받는다.

Naver Cloud Platform의 Console 에 들어가 Platform 부분의 Classic 과 VPC 중 선택한다. (VPC가 더 비싸고 성능이 좋음) 나는 Classic을 선택하고 Server 에 들어갔다.

젠킨스 접속

http://[IP 주소]:8081

접속 안됨


사이트에 연결할 수 없음이 뜬다.

알고 보니 NCP 서버에서 젠킨스를 사용하는 포트 (8081)이 막혀있었던 것이다.

ACG 설정에 들어가서 8081 포트를 추가해주었더니 정상적으로 접속이 된다.

젠킨스 초기 비번 확인 후 로그인

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

젠킨스 플러그인 설치

추천되는 플러그인을 설치하는 것이 권장된다.

젠킨스 사용자 생성

Username: 

Password: 

Confirm password: 

Full name: 

E-mail address: 

본인의 이메일 주소

이제 젠킨스를 시작할 수 있는 단계에 왔다!

0개의 댓글