当前位置: 首页 > news >正文

docker搭建CI/CD环境配置过程中的常见问题

一、Jenkins

1、pull镜像问题

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)已退出)

[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)有权读写该目录。可以通过以下命令来实现:

sudo chown -R 1000:1000 /data/jenkins_home/

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

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

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

docker rm jenkins -f

重新创建并启动jenkins容器:

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

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

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

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

重启docker

systemctl restart docker

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

4、安装插件报错:

请添加图片描述
原因:安装的jenkins版本不是最新的,下载插件时有问题
解决方案:

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

jenkins页面操作:配置ssh账户信息、配置ssh

二、Gitlab

1、安装gitlab:

docker run --detach \--hostname 14.103.xx.xx \--publish 8443:443 --publish 8081:80 --publish 2222:22 \--name gitlab \--restart always \--volume $PWD/config:/etc/gitlab \--volume $PWD/logs:/var/log/gitlab \--volume $PWD/data:/var/opt/gitlab \gitlab/gitlab-ce:latest

说明:–detach就是常用的-d参数,作用是让docker容器在后台运行
gitlab安装之后默认会有一个root密码,需要登陆进去修改密码,首次登陆24小时后失效。

#在文件中查询root密码:
/etc/gitlab/initial_root_password
http://www.lryc.cn/news/330632.html

相关文章:

  • 实验四 微信小程序智能手机互联网程序设计(微信程序方向)实验报告
  • WPF —— 关键帧动画
  • Taro + vue3 小程序封装标题组件
  • babyAGI(6)-babyCoder源码阅读2任务描述部分
  • 生成式语言模型预训练阶段验证方式与微调阶段验证方式
  • flink on yarn
  • 用TOMCAT部署web项目教程
  • bash例子-source进程替换、alias不生效处理
  • rabbitmq死信交换机,死信队列使用
  • gitlab备份与恢复
  • HBase详解(1)
  • 深入理解数据结构第二弹——二叉树(2)——堆排序及其时间复杂度
  • 视频汇聚/安防监控/EasyCVR平台播放器EasyPlayer更新:新增【性能面板】
  • 【教程】Flutter 应用混淆
  • STM32中C编程引入C++程序
  • MySQL DBA 需要了解一下 InnoDB Online DDL 算法更新
  • 多态--下
  • 备考ICA----Istio实验16---HTTP流量授权
  • STM32-02基于HAL库(CubeMX+MDK+Proteus)GPIO输出案例(LED流水灯)
  • 华为审核被拒提示: 您的应用存在(最近任务列表隐藏风险活动)的行为,不符合华为应用市场审核标准
  • 数论与线性代数——整除分块【数论分块】的【运用】【思考】【讲解】【证明(作者自己证的QWQ)】
  • Linux系统下安装jdk与tomcat【linux】
  • matlab实现决策树可视化——信息增益、C4.5、基尼指数
  • 如何使用Python进行网络编程和套接字通信?
  • nodeJs 实现视频的转换(超详细教程)
  • Transformer - model architecture
  • Zookeeper学习一
  • SAR教程系列7——在cadence中用Spectrum工具FFT仿真ADC的ENOB、SNR等动态性能指标
  • 攻防世界:mfw[WriteUP]
  • mysq性能优化-my.cnf配置文件参数调整