• docker安装jenkins以及Permission denied错误的解决方法!


    1.安装jenkins

    docker创建jenkins容器
    docker run -d -p 8090:8080 -p 8091:50000 -v /data/jenkins_home:/var/jenkins_home -v /etc/localtime:/etc/localtime --name jenkins jenkinsci/blueocean
    
    • 1
    出现以下错误提示:

    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?

    查看容器运行日志:
    docker logs jenkins
    
    • 1

    在这里插入图片描述

    2.“Permission denied” 解决方法

    第一种:容器执行命令加上特权参数 --privileged=true

    删除容器

    docker rm jenkins
    
    • 1

    加上特权参数重新创建jenkins容器:

    docker run -d -p 8090:8080 -p 8091:50000 -v /data/jenkins_home:/var/jenkins_home -v /etc/localtime:/etc/localtime --privileged=true --name jenkins jenkins
    
    • 1

    查看容器日志:

    docker rm jenkins
    
    • 1

    在这里插入图片描述
    并没有解决问题!!!!

    第二种:临时关闭selinux

    临时关闭selinux:

    setenforce 0
    
    • 1

    删除容器:

    docker rm jenkins
    
    • 1

    重新创建jenkins容器:

    docker run -d -p 8090:8080 -p 8091:50000 -v /data/jenkins_home:/var/jenkins_home -v /etc/localtime:/etc/localtime --name jenkins jenkins
    
    • 1

    查看容器日志:

    docker rm jenkins
    
    • 1

    结果:
    在这里插入图片描述
    并没有解决问题!!!!

    第三种:添加selinux规则,改变要挂载的目录的安全性文本

    修改selinux规则:

    chcon -Rt chcon -Rt svirt_sandbox_file_t /data/jenkins_home
    
    • 1
    chcon -Rt svirt_sandbox_file_t /etc/localtime
    
    • 1

    删除容器:

    docker rm jenkins
    
    • 1

    重新创建jenkins容器:

    docker run -d -p 8090:8080 -p 8091:50000 -v /data/jenkins_home:/var/jenkins_home -v /etc/localtime:/etc/localtime --name jenkins jenkins
    
    • 1

    查看容器日志:

    docker logs jenkins
    
    • 1

    结果:
    在这里插入图片描述

    第四种:根据uid修改所挂载宿主机目录的权限

    参考博客:https://developer.aliyun.com/article/53990

    查看jenkins容器的用户和uid

    docker run -ti --rm --entrypoint="/bin/bash" jenkins -c "whoami && id"
    
    • 1

    在这里插入图片描述

    给jenkins 的 uid 赋予 /data的权限:

    sudo chown -R 1000 /data
    
    • 1

    重启启动jenkins:

    docker start jenkins
    
    • 1

    查看 jenkins是否启动:

    docker ps | grep jenkins
    
    • 1

    结果:
    在这里插入图片描述
    牛逼!!!

    3.配置镜像加速

    b编辑xml文档:

    vim /data/jenkins_home/hudson.model.UpdateCenter.xml
    
    • 1

    修改 url 为清华大学官方镜像:https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
    在这里插入图片描述

    4.访问jenkins管理界面

    浏览器输入jenkins安装机器所在IP地址和端口:
    http://127.0.0.1:8090
    在这里插入图片描述
    执行以下命令获取管理员密码输入该框:

    vim /data/jenkins_home/secrets/initialAdminPassword
    
    • 1

    成功登录:
    在这里插入图片描述

  • 相关阅读:
    机器人工程是否有红利期
    高阶面试-mongodb
    Gorsonpy的计算器
    首次扭亏为盈后,货拉拉还想靠造车更上一层楼?
    如何通过QQ进行手机号溯源
    【毕业设计】基于php+mysql+apache的二手物品交易网站设计与实现(毕业论文+程序源码)——二手物品交易网站
    NoSQL之Redis配置使用
    荧光染料CY3/CY5/CY5.5聚已内酯PLA载药纳米粒CY3-PLA|CY5-SS-PEG-PLA|CY5.5-PLA(定制供应)
    二叉树的层序遍历
    边缘计算物联网网关在机械加工行业的应用及作用分享
  • 原文地址:https://blog.csdn.net/qq_36940806/article/details/126690130