Eu segui as etapas simples para colocar o Jenkins em funcionamento por meio de um contêiner docker: link
Basicamente, tudo que fiz foi executado:
docker run \
--rm \
-d \
-p 8080:8080 \
-v jenkins-data:/var/jenkins_home \
-v /var/run/docker.sock:/var/run/docker.sock \
jenkinsci/blueocean
Agora, ao tentar configurar um pipeline dentro do Jenkins, não é possível localizar o deamon do Docker. Saída de erro que recebo do pipeline dentro do Jenkins:
+ docker pull python:3.6.3
Warning: failed to get default registry endpoint from daemon (Cannot connect to the Docker daemon. Is the docker daemon running on this host?). Using system default: https://index.docker.io/v1/
Cannot connect to the Docker daemon. Is the docker daemon running on this host?
script returned exit code 1
Isso sugere que não há um daemon do Docker em execução que Jenkins possa ver. A opção: -v /var/run/docker.sock:/var/run/docker.sock
na inicialização do contêiner deve ter funcionado, mas não tenho certeza de quais outras etapas de configuração posso estar perdendo aqui?
Estou executando isso em macOS 10.13
e minha instalação do Docker no host parece funcionar bem. Existem alguns pontos de configuração do Jenkins, onde mais informações e instalações do docker podem ser configuradas, mas parece que o padrão deve funcionar?
Por favor, deixe-me saber se estou faltando alguma coisa para obter acesso Jenkins ao daemon do docker.
[UPDATE]
Após mais pesquisas, todos apontavam para as permissões /var/run/docker.sock
como a principal fonte para esse tipo de problema. Olhando para este soquete montado, parece que o usuário jenkins
não faz parte do grupo correto. Eu estou supondo que o mapeamento do grupo de hosts no container é feito por id e que simplesmente não combina?