Jenkins를 Docker로 설치하는 방법
안녕하세요! 😊 오늘은 Jenkins를 Docker 환경에서 설치하는 방법을 알려드리려고 해요. DevOps 환경에서 Jenkins는 CI/CD 파이프라인을 구축할 때 정말 많이 사용되죠. 그럼 바로 시작해볼까요?
🛠️ 설치 명령어
먼저 Docker를 이용해 Jenkins를 설치할 때 사용할 명령어들을 소개할게요.
docker run --name jenkins -p 8080:8080 -p 50000:50000 -v /var/run/docker.sock:/var/run/docker.sock -v /data/jenkins/jenkins:/var/jenkins_home -v /data/jenkins/data:/var/lib/jenkins -d jenkins/jenkins:lts
또는 아래와 같은 명령어도 사용 가능해요.
docker run --name jenkins -p 8080:8080 -p 50000:50000 -v /var/run/docker.sock:/var/run/docker.sock -v /data/jenkins/data:/var/lib/jenkins/ -d jenkins/jenkins:lts
📸 설치 화면 스크린샷
설치 과정 중 만날 수 있는 화면들의 링크를 첨부했어요!

🚧 설치 시 주의사항
Jenkins를 Docker 환경에서 설치할 때 몇 가지 주의해야 할 사항들이 있습니다. 아래에 다섯 가지 주요 주의사항을 정리해 보았습니다:
- Docker 소켓 공유 시 보안 문제: Jenkins 컨테이너에서 Docker를 사용하기 위해 호스트의
/var/run/docker.sock파일을 공유하는 경우, 컨테이너가 호스트의 Docker 데몬에 직접 접근하게 됩니다. 이는 보안상 위험을 초래할 수 있으므로, 필요 시 적절한 권한 설정과 보안 조치를 취해야 합니다. - 컨테이너 내부의 Docker 설치: Jenkins 컨테이너 내에서 Docker 명령어를 사용하려면, 컨테이너 내부에 Docker를 설치해야 합니다. 이를 위해 Dockerfile을 작성하여 Jenkins 이미지에 Docker를 포함시키는 방법을 사용할 수 있습니다.
- 초기 관리자 비밀번호 확인: Jenkins를 처음 설치한 후, 초기 관리자 비밀번호는 컨테이너 내부의
/var/jenkins_home/secrets/initialAdminPassword파일에 저장되어 있습니다. 이 비밀번호를 확인하려면 다음 명령어를 사용하여 컨테이너에 접속한 후 파일 내용을 확인해야 합니다:
docker exec -it jenkins /bin/bash
cat /var/jenkins_home/secrets/initialAdminPassword
- 플러그인 설치 및 업데이트: Jenkins는 다양한 플러그인을 통해 기능을 확장할 수 있습니다. 그러나 모든 플러그인이 Docker 환경에서 완벽하게 동작하는 것은 아니므로, 플러그인 설치 및 업데이트 시 호환성을 확인하고 진행하는 것이 좋습니다.
- 데이터 백업 및 복원: Jenkins의 설정과 데이터는
/var/jenkins_home디렉토리에 저장됩니다. 이 디렉토리를 호스트의 디렉토리와 마운트하여 데이터의 영속성을 유지하고, 정기적인 백업을 통해 데이터 손실에 대비해야 합니다. Docker 볼륨을 사용해 데이터를 영구적으로 저장하도록 설정하는 게 좋아요.
오늘도 즐거운 개발 되세요! 😉