Jenkins问题笔记

1、启动docker容器权限不足

通过如下命令启动docker容器后,使用命令"docker logs -f jenkins"查看jenkins容器日志,

docker run -d -p 8080:8080 -v /docker-data/jenkins:/var/jenkins_home --name jenkins jenkinsci/blueocean

日志如下:

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?

原因:jenkins默认以jenkins:jenkins用户来运行,该用户对于/docker-data/jenkins目录没有写权限,所以无法写入容器中的/var/jenkins_home目录。

解决办法:

a、将/docker-data/jenkins目录授权给jenkins:jenkins用户,使用命令"chown -R jenkins:jenkins /docker-data/jenkins"。

b、以root用户启动jenkins容器,在docker run 命令中添加"-u root"选项。

c、如果按以上两种方法仍然出现Permission denied错误,那么可以通过命令”sestatus“检查一下selinux状态,开启的情况下会导致一些服务安装、使用不成功。临时关闭:"setenforce 0",永久关闭:修改配置文件/etc/selinux/config,将其中SELINUX设置为disabled。

2、Jenkins正在启动,请稍后...

jenkins启动后一直停在获取网络界面,提示”Jenkins正在启动,请稍后...“。

原因:因为需要联网获取插件更新文件,但是由于网络的原因下载较慢或者无法下载。下载地址在jenkins安装目录中的hudson.model.UpdateCenter.xml文件中:

<?xml version='1.1' encoding='UTF-8'?>
<sites>
  <site>
    <id>default</id>
    <url>https://updates.jenkins.io/update-center.json</url>
  </site>
</sites>

解决办法:

1、离线下载json文件,然后将其上传部署到自己的apache服务器内,最后修改这个url地址为自己服务器的地址;

2、将url改为其他可用地址,如:https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/current/update-center.json。

原文地址:https://www.cnblogs.com/aaron-shu/p/9172196.html