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

【Jenkins】解决在Jenkins Agent节点容器内无法访问物理机的docker和docker compose的问题

解决在Jenkins Agent节点容器内无法访问物理机的docker和docker compose的问题

  • 1. 确定物理机docker和docker compose已经安装
  • 2. 编写Jenkins Agent结点docker-compose.yaml配置文件
  • 3. 修改docker运行时文件权限
  • 4. 启动容器并验证

最近接触到一个发布产物是一个 docker镜像的项目,想使用 Jenkinspipeline结合 Harbor实现 CICD效果。
笔者电脑环境: ubuntu20.04

1. 确定物理机docker和docker compose已经安装

验证指令:

docker version

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

docker compose version

输出结果:
在这里插入图片描述
若未安装,输入一下指令进行安装
官方链接:跳转

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

2. 编写Jenkins Agent结点docker-compose.yaml配置文件

文件内容如下:

services:
  jenkins-agent:
    image: jenkins/inbound-agent
    container_name: jenkins-agent
    environment:
      - JENKINS_URL=<填入master节点地址>
      - JENKINS_AGENT_NAME=<填入agent节点名称>
      - JENKINS_AGENT_WORKDIR=/home/jenkins/agent
      - JENKINS_SECRET=<填写创建节点时生成的密钥>
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock  # 共享 Docker 套接字
      - /usr/bin/docker:/usr/bin/docker  # 共享 Docker CLI
      - /usr/libexec/docker/cli-plugins/docker-compose:/usr/libexec/docker/cli-plugins/docker-compose
      - jenkins-agent-workdir:/home/jenkins/agent
    restart: unless-stopped
volumes:
  jenkins-agent-workdir:

3. 修改docker运行时文件权限

sudo chmod 666 /var/run/docker.sock

4. 启动容器并验证

在docker-compose.yaml同目录执行:

docker compose up -d

在容器内验证dockerdocker compose指令:

docker exec -u root -it jenkins-agent /bin/bash -c "docker version && docker compose version"

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


http://www.kler.cn/news/364151.html

相关文章:

  • ORA-12170: TNS:Connect timeout occurred
  • 构建未来:AI初创企业的投资桥梁 —— AI Angels Fund
  • 2023 ICPC 亚洲澳门赛区赛 D. Graph of Maximum Degree 3
  • AMD平台,5600X+6650XT,虚拟机安装macOS 15 Sequoia 15.0.1 (2024.10)
  • Python量化交易(二):金融市场的基础概念
  • 【MySQL】实战篇—项目需求分析:如何进行需求分析与数据库设计
  • 使用 Python 解析火狐浏览器的 SQLite3 数据库
  • C++,STL 047(24.10.24)
  • Mysql-count(1)、count(*)和count(列名)的区别?
  • Kafka Tool(Offset Explorer)在windows下配置访问kerberos认证Kafka
  • 【Ubuntu20.04 Visual Studio Code安装】【VSCODE】
  • 相对定位和绝对定位,使得图片在中间 ( html css )
  • Codeforces Round 981(Div. 3)
  • 【开源免费】基于SpringBoot+Vue.JS校园美食分享平台 (JAVA毕业设计)
  • [Python学习日记-53] Python 中的正则表达式模块 —— re
  • docker国内镜像仓库地址
  • Linux Shell 实现一键部署mariadb11.6
  • Hugging Face HUGS 加快了基于开放模型的AI应用的开发
  • 相机外参与相机位姿深度理解
  • 115页PPT华为管理变革:制度创新与文化塑造的核心实践
  • <大厂实战场景> ~ Flutter鸿蒙next 解析后端返回的 HTML 数据详解
  • 支持多种数据来源的ocr识别,GOT-OCR2.0模型部署
  • Java基础练习:哥德巴猜想,回文数
  • Python数值计算(32)——simpson 1/3积分公式
  • istio单网格多主集群验证
  • C++学习路线(二十二)