今天在docker中启动jenkins容器时,按照官方文档中的方法执行:
docker run -p 8080:8080 -p 50000:50000 -v /your/home:/var/jenkins_home jenkins
遇到了一个权限问题,报错为:
Can not write to /var/jenkins_home/copy_reference_file.log. Wrong volume permissions?
touch: cannot touch ‘/var/jenkins_home/copy_reference_file.log’: Permission denied
原因是Jenkins镜像内部使用的用户是jenkons,但是我们启动容器时的账号是root,导致没有权限操作内部目录,我们可以稍微改一下上面的命令:
docker run -p 8080:8080 -p 50000:50000 -v /your/home:/var/jenkins_home -u 0 jenkins
这样就启动成功了。
这命令的意思是覆盖容器中内置的帐号,该用外部传入,这里传入0代表的是root帐号Id。这样再启动的时候就应该没问题了。
文章不错支持一下吧,,非常喜欢