docker环境配置过程中的常见问题

1、pull镜像问题

bash 复制代码
docker pull jenkins/jenkins:lts
Using default tag: latest
Trying to pull repository docker.io/library/centos ... 
Get https://registry-1.docker.io/v2/library/centos/manifests/latest: Get https://auth.docker.io/token?scope=repository%3Alibrary%2Fcentos%3Apull&service=registry.docker.io: net/http: TLS handshake timeout

解决办法:添加dns或修改国内源,根本原因是网络访问不到

2、镜像启动报错:(镜像没有启动对应端口,状态Exited (1)已退出)

bash 复制代码
[root@iv-yd0kl60qgwwuxjsckauv docker]# docker logs jenkins
INSTALL WARNING: User:  missing rw permissions on JENKINS_HOME: /var/jenkins_home
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?

解决方案

要解决这个问题,你需要调整宿主机上/data/jenkins_home/目录的权限,使得容器内的用户(UID为1000)有权读写该目录。可以通过以下命令来实现:

bash 复制代码
sudo chown -R 1000:1000 /data/jenkins_home/

这个命令会将/data/jenkins_home/目录及其子目录的所有者和群组都更改为UID和GID为1000的用户和组。这样做是基于jenkins/jenkins:lts镜像中,jenkins服务运行在一个UID为1000的用户上的事实。

完成这个权限调整后,你可以重新启动jenkins容器来应用更改:

删除当前的jenkins容器(如果它没有在运行,这一步仍然是必要的,以确保重新启动时可以应用新的权限设置):

bash 复制代码
docker rm jenkins -f

重新创建并启动jenkins容器:

bash 复制代码
docker run -d -p 8080:8080 --name jenkins -v /data/jenkins_home:/var/jenkins_home jenkins/jenkins:lts

这样应该能解决权限问题,让jenkins容器能够正常启动并运行。如果在此过程中遇到其他问题,可以通过docker logs jenkins来检查jenkins容器的日志,以获取更多信息。

3、网络访问地址后报错:

bash 复制代码
该网页无法正常运作14.xx.xx.2 目前无法处理此请求。
HTTP ERROR 502

重启docker

bash 复制代码
systemctl restart docker

重新删除jenkins容器后再次启动,在此之前需要在云服务页面的安全组放开对应端口

4、安装插件报错:

原因:安装的jenkins版本不是最新的,下载插件时有问题

解决方案:

bash 复制代码
docker stop jenkins
docker rm jenkins -f
docker rmi jenkins
docker pull jenkins/jenkins:latest
#拉取最新版本的jenkins镜像,重新启动容器即可
docker run -di --name jenkins -p 8080:8080 -v /data/jenkins_home/:/var/jenkins_home jenkins/jenkins:latest
相关推荐
努力的小T28 分钟前
基于 Bash 脚本的系统信息定时收集方案
linux·运维·服务器·网络·云计算·bash
夜光小兔纸1 小时前
Oracle 普通用户连接hang住处理方法
运维·数据库·oracle
moton20171 小时前
云原生:构建现代化应用的基石
后端·docker·微服务·云原生·容器·架构·kubernetes
爱敲代码的边芙1 小时前
Linux:信号的保存[2]
linux·运维·服务器
阿俊仔(摸鱼版)2 小时前
Python 常用运维模块之OS模块篇
运维·开发语言·python·云服务器
工程师焱记2 小时前
Linux 常用命令——系统设置篇(保姆级说明)
linux·运维·服务器
chian-ocean2 小时前
探索Linux中的进程控制:从启动到退出的背后原理
linux·运维·服务器
华纳云IDC服务商2 小时前
常见的备份服务器操作系统如何选择
运维·服务器
wanhengidc2 小时前
网站服务器出现延迟的原因是什么?
运维·服务器
van叶~3 小时前
Linux探秘坊-------5.git
linux·运维·git