【发布时间】:2019-06-24 09:59:43
【问题描述】:
类似问题
Dockerfile
FROM jenkins/jenkins:lts
USER root
RUN apt-get -qq update && apt-get -qq -y install --no-install-recommends curl
RUN curl -sSL https://get.docker.com/ | sh
RUN usermod -aG docker jenkins
USER jekins
终端命令
docker run -p 8080:8080 -p 50000:50000 \
-v jenkins_home:/var/jenkins_home \
-v /var/run/docker.sock:/var/run/docker.sock \
-ti bluebrown/docker-in-jenkins-in-docker /bin/bash
容器内
docker image ls
输出
Got permission denied while trying to connect to the Docker daemon
socket at unix:///var/run/docker.sock: Get
http://%2Fvar%2Frun%2Fdocker.sock/v1.39/images/json: dial unix
/var/run/docker.sock: connect: permission denied
当我注释掉 dockerfile 的最后一行,以 root 用户身份运行实例时,
# USER jenkins
出于显而易见的原因,我可以毫无问题地访问 docker 套接字。但是,我认为这不是一个适当的解决方案。这就是为什么我想问是否有人设法以非 root 用户身份访问 docker 套接字。
【问题讨论】:
-
很确定这已被多次回答,包括在您链接的问题中。我的首选方法是:github.com/sudo-bmitch/jenkins-docker
标签: docker jenkins permissions