docker compose를 사용하여 Jenkins를 설치하려고 합니다.

docker compose를 사용하여 Jenkins를 설치하려고 합니다.

젠킨스 에이전트가 도커에 접근하지 못하는 문제가 발생해 포기하려 했으나, 여기에 먼저 물어볼까 생각했습니다.

공식 문서 외에도 이 가이드를 사용하여 프록시와 함께 docker compose를 사용하여 설정하는 데 도움을 주었습니다.

그러나 에이전트는 Docker에 액세스할 수 없습니다. 사실 git도 설치되어 있지 않아서 설치해야 합니다. 실제로 이미지에서 apt가 깨져서 설치 후 수정하고 다시 설치해야 했습니다. 너무 고통스러워서 다음과 같이 이미지를 확장했습니다.

FROM jenkins/ssh-agent:jdk11
RUN apt update
RUN sh -c 'apt install -y git-all || true'
RUN mv /var/lib/dpkg/info/install-info.postinst /var/lib/dpkg/info/install-info.postinst.bad
RUN apt install -y git-all

이미지 jenkins/ssh-agent:jdk11는 Jenkins 에이전트 노드의 공식 이미지인데, 꼼꼼히 살펴보며 놀랐습니다.

docker-compose 파일에 다음 볼륨을 추가해 보았습니다.

  volumes
    - /var/run/docker.sock:/var/run/docker.sock
    - /usr/bin/docker:/usr/bin/docker

그러나 이것은 작동하지 않습니다. jenkins가능하도록 호스트에 사용자를 추가해 보았습니다 sudo usermod -a -G docker jenkins(검사가 발생할 경우를 대비해).

관련 정보