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
相关推荐
君穆南6 小时前
基于 NFS 与 Rsync 实现跨服务器 Seafile 数据平滑迁移实战
linux·运维·git
bloglin999996 小时前
scp、rsync远程文件同步
linux·运维·服务器
迦南的迦 亚索的索7 小时前
LINUX环境
linux·运维·服务器
yuanjj887 小时前
linux下调试域格CLM920 NC5等9x07平台模块 QMI拨号
linux·运维·服务器
IMPYLH7 小时前
Linux 的 printenv 命令
linux·运维·服务器·bash
SilentSamsara7 小时前
SSH 远程管理:密钥登录 + 隧道转发,一次性配置好
linux·运维·服务器·ubuntu·centos·ssh
冷色系里的一抹暖调8 小时前
OpenClaw Docker部署避坑指南:服务启动成功但网页打不开?
人工智能·docker·容器·openclaw
Cx330❀8 小时前
Linux命名管道(FIFO)通信:从原理到实操,一文搞懂跨进程通信
大数据·linux·运维·服务器·elasticsearch·搜索引擎
嵌入式×边缘AI:打怪升级日志9 小时前
嵌入式Linux应用开发快速入门(从零到第一个程序)
linux·运维·notepad++
AI、少年郎9 小时前
MiniMind第 2 篇:破除大模型 “神秘感“, 环境搭建|Win/Linux 本地快速部署
linux·运维·服务器·ai·大模型训练·大模型微调·大模型原理