【发布时间】:2022-03-15 19:54:01
【问题描述】:
我是 docker 新手,所以如果我缺少一个相当明显的过程,我为前面的愚蠢问题道歉。
我正在使用jenkins docker 映像设置一个持续集成服务器。我做了一个docker pull jenkins,并创建了一个用户jenkins,以允许我将容器中的/var/jenkins_home 挂载到我主机的/var/jenkins_home(也属于jenkins:jenkins 用户)。
问题是容器似乎用 uid 102 定义了 jenkins 用户,但我的主机将 jenkins 用户作为 1002,所以当我运行它时,我得到:
docker run --name jenkins -u jenkins -p 8080 -v /var/jenkins_home:/var/jenkins_home jenkins
/usr/local/bin/jenkins.sh: line 25: /var/jenkins_home/copy_reference_file.log: Permission denied
我只需将主机的jenkins 用户的uid 设置为/etc/passwd 中的102,但该uid 已被sshd 占用。我认为解决方案是将容器更改为使用 uid 1002,但我不确定如何。
编辑
其实主机上的用户102是messagebus,不是sshd。
【问题讨论】:
标签: jenkins docker jenkins-docker