通过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
相关推荐
乌日尼乐4 小时前
【Java基础整理】Java字符串处理,String、StringBuffer、StringBuilder
java·后端
全栈独立开发者4 小时前
点餐系统装上了“DeepSeek大脑”:基于 Spring AI + PgVector 的 RAG 落地指南
java·人工智能·spring
dmonstererer4 小时前
【k8s设置污点/容忍】
java·容器·kubernetes
super_lzb4 小时前
mybatis拦截器ParameterHandler详解
java·数据库·spring boot·spring·mybatis
程序之巅4 小时前
VS code 远程python代码debug
android·java·python
我是Superman丶4 小时前
【异常】Spring Ai Alibaba 流式输出卡住无响应的问题
java·后端·spring
墨雨晨曦884 小时前
Nacos
java
invicinble4 小时前
seata的认识与实际开发要做的事情
java
乌日尼乐5 小时前
【Java基础整理】Java多线程
java·后端
slient_love5 小时前
docker和docker compose部署安装
docker·容器