젠킨스 에이전트가 도커에 접근하지 못하는 문제가 발생해 포기하려 했으나, 여기에 먼저 물어볼까 생각했습니다.
공식 문서 외에도 이 가이드를 사용하여 프록시와 함께 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
(검사가 발생할 경우를 대비해).