DevOps, Infra

[Jenkins] 플러그인 설치 및 준비

seulseul 2022. 12. 27. 19:51

 

목차

 

     

    1.젠킨스 플러그인 설치

     

    jenkins suggested plugins (시작시 제안 플러그인) 설치 + 추가적으로 아래 플러그인을 설치한다.

    • git parameter
    • cleanup
    • docker pipeline

    2. Jenkins - GitHub 연동

    2.1. GitHub access token 발급

    Settings > Developer settings > Personal access tokens (classic)

    GitHub access token

    2.2. GitHub 계정 등록

    Dashboard > Jenkins 관리 > Configure System > GitHub 에서 SecretText

    3. Jenkins - Docker Hub 연동

    3.1. Dockerhub 에서 access token 발급

     

    3.2. Jeknkins Credential 생성 ( Docker Hub )

    Dashboard > Jenkins 관리 > Credentials > System > Global credentials (unrestricted)

    4. Jenkins 계정 Docker 권한 확인 & 추가


    jenkins 빌드step 에 docker build , push 가 포함 돼있을 경우 jenkins계정에서 docker 실행 권한이 필요하다.
    권한이 없을 경우, 아래와 같은 permission denied 에러 메세지를 보게된다.

    # 에러메세지
    + docker image build -f Dockerfile -t jei0486/demo-api:v2 .
    Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/build?buildargs=%7B%7D&cachefrom=%5B%5D&cgroupparent=&cpuperiod=0&cpuquota=0&cpusetcpus=&cpusetmems=&cpushares=0&dockerfile=Dockerfile&labels=%7B%7D&memory=0&memswap=0&networkmode=default&rm=1&shmsize=0&t=jei0486%2Fdemo-api%3Av2&target=&ulimits=null&version=1": dial unix /var/run/docker.sock: connect: permission denied

    따라서 아래 명령어를 실행한다.

    # 사용자 jenkins 를 docker 그룹에 추가
    sudo usermod -a -G docker jenkins 
    # 그룹 추가 확인
    grep docker /etc/group
    # 젠킨스 재시작
    sudo service jenkins restart
    root@DESKTOP:/home/ubuntu# grep docker /etc/group
    docker:x:1001:ubuntu
    
    root@DESKTOP:/home/ubuntu# sudo usermod -a -G docker jenkins
    
    root@DESKTOP:/home/ubuntu# grep docker /etc/group
    docker:x:1001:ubuntu,jenkins
    
    root@DESKTOP:/home/ubuntu# service jenkins restart
     * Restarting Jenkins Automation Server jenkins
    Correct java version found
    Setting up max open files limit to 8192

    'DevOps, Infra' 카테고리의 다른 글

    [Jenkins] Jenkinsfile  (0) 2022.12.28
    [Jenkins] 빌드 자동화 - polling  (0) 2022.12.27
    Git 브랜치 전략 3가지  (0) 2022.12.27
    [skaffold] Skaffold , kustomize with Spring Boot  (0) 2022.12.27
    Jenkins Install for WSL  (0) 2022.12.27