通过docker启动Jenkins容器报错

项目场景:

通过docker启动Jenkins容器


问题描述

Jenkins容器启动失败,通过sudo docker logs -f jenkins命令 查看日志如下:

复制代码
touch: cannot touch ‘/var/jenkins_home/copy_reference_file.log’: Permission denied Can not write to /var/jenkins_home/copy_reference_file.log. Wrong volume permissions?

原因分析:

访问copy_reference_file.log文件没有权限。

由于启动用户,和docker容器内部的用不一致导致的。

复制代码
因为当映射本地数据卷时,/opt/jenkins目录的拥有者为root用户,而容器中jenkins user的uid为1000

解决方案:

修改docker宿主机文件的权限。

我的目录映射关系为:

/opt/jenkins:/var/jenkins_home

所以我需要修改/opt/jenkins目录下的文件的所属用户及用户组。

复制代码
chown -R 1000:1000 /opt/jenkins
相关推荐
clk6607几秒前
Spring Boot
java·spring boot·后端
扣丁梦想家4 分钟前
✅ 常用 Java HTTP 客户端汇总及使用示例
java·开发语言·http
sss191s31 分钟前
Java 集合面试题 PDF 及常见考点解析与备考指南
java·开发语言·pdf
七七&55631 分钟前
java面试-场景题
java·python·面试
罗技12335 分钟前
我用Amazon Q写了一个Docker客户端,并上架了懒猫微服商店
运维·docker·容器
loser.loser37 分钟前
QQ邮箱发送验证码(Springboot)
java·spring boot·mybatis
誰能久伴不乏1 小时前
Qt 开发中的父类与父对象的区别和父对象传递:如何选择 `QWidget` 或 `QObject`?
java·开发语言·qt
喜欢踢足球的老罗1 小时前
在Spring Boot 3.3中使用Druid数据源及其监控功能
java·spring boot·后端·druid
风早君1 小时前
jenkins集成gitlab发布到远程服务器
服务器·gitlab·jenkins
Winn~1 小时前
JVM垃圾回收器-ZGC
java·jvm·算法