【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"

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/900503.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【力扣】GO解决子序列相关问题

文章目录 一、引言二、动态规划方法论深度提炼子序列问题的通用解法模式 三、通用方法论应用示例&#xff1a;最长递增子序列&#xff08;LeetCode题目300&#xff09;Go 语言代码实现 四、最长连续递增序列&#xff08;LeetCode题目674&#xff09;Go 语言代码实现 五、最长重…

EXCELL中如何两条线画入一张图中,标记坐标轴标题?

1&#xff0c;打开excel&#xff0c;左击选中两列&#xff0c; 2&#xff0c;菜单栏>“插入”>”二维折线图”选中一个 3&#xff0c;选中出现的两条线中的一条右击>最下一行&#xff0c;“设置数据系列格式” 4&#xff0c;右测“系列选项中”>点击“次坐标轴” 5…

邮件系统SSL加密传输,保护你的电子邮件免受网络威胁

在互联网的浪潮中&#xff0c;企业数字化转型的步伐不断加快。企业邮箱作为数字化应用的重要组成部分&#xff0c;已成为员工沟通、协同工作和企业管理的关键工具。但是在公共网络安全性普遍较弱的背景下&#xff0c;黑客容易侵入企业网络&#xff0c;监控流量&#xff0c;截获…

私域朋友圈运营

今天必须给大家分享一份超棒的朋友圈运营思维导图 有了它&#xff0c;你可以逐步打造属于自己的精彩朋友圈&#x1f389;。无论是想分享生活点滴&#x1f4a7;&#xff0c;还是展示个人魅力✨&#xff0c;又或者推广自己的业务&#x1f4c8;&#xff0c;这份思维导图都能给你指…

vuetify学习笔记(v-app和v-responsive)

我最近在学习vuetify3&#xff0c;我以前是用element plus和taiwind css。vuetify的一个好处是&#xff0c;它不仅是一个向element plus一样提供好用的组件库&#xff0c;而且还提供了向taiwind css一样的原子类&#xff0c;可以通过类名方便的定义组建的样式。以前element plu…

为什么使用 toFixed 方法的结果不一致呢?

偶遇一个不准确的方法 toFixed() &#xff0c;其是 JS 中用于将数字格式化为指定小数位数的方法&#xff0c;但有时返回的结果不够准确&#xff0c;展示如下&#xff1a; 这通常是由于 JavaScript 对浮点数的处理方式导致的。 1. 浮点数精度问题 JavaScript 中的数字是以 IEE…

乡村小道图像分割系统:智能化检测

乡村小道图像分割系统源码&#xff06;数据集分享 [yolov8-seg-C2f-Faster-EMA&#xff06;yolov8-seg-HGNetV2等50全套改进创新点发刊_一键训练教程_Web前端展示] 1.研究背景与意义 项目参考ILSVRC ImageNet Large Scale Visual Recognition Challenge 项目来源AAAI Globa…

JavaWeb合集22-Apache POI

二十二、Apache POI Apache POI是一个处理Miscrosoft Office各种文件格式的开源项目。简单来说就是&#xff0c;我们可以使用POI在Java 序中对Miscrosoft Office各种文件进行读写操作。一般情况下&#xff0c;POI都是用于操作Excel文件。 使用场景&#xff1a;银行网银系统导出…

Unity Vision Pro 保姆级开发教程-PolySpatial VisionOS Samples 示例场景

视频教程地址 PolySpatial VisionOS Samples 示例场景 Unity Vision Pro 中文课堂教程地址&#xff1a; Unity3D Vision Pro 开发教程【保姆级】 | Unity 中文课堂 有界体积样本 Balloon Gallery 气球画廊 气球画廊是一个迷你游戏&#xff0c;演示了使用Indirect Pinch and …

vue3使用i18n做国际化多语言,实现常量跟随语言切换翻译

因为我有一个常量的配置文件在项目中&#xff0c;而且有中文内容&#xff0c;我想在切换语言的时候&#xff0c;跟着这个翻译也实时切换&#xff0c;就可以使用computed计算属性实现。 把name改成下面的样子&#xff1a; name: computed(() > t(pad.regularMode)), 就可以…

基于SpringBoot的人才公寓管理系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏&#xff1a;…

一个包含了超过 200 个实用脚本的 Python 脚本库,如文件管理、网络操作、图像处理、文本处理等

前言 在日常的工作和生活中&#xff0c;我们经常会遇到一些重复性的任务&#xff0c;如文件管理、网络cao作、图像处理、文本处理等。这些任务虽然简单&#xff0c;但如果频繁手动cao作&#xff0c;不仅耗时耗力&#xff0c;还容易出错。 现有的软件虽然能处理一部分问题&…

Vue2+Univer 环境搭建

node js 版本 16.32 参考文档&#xff1a; Vue2Univer实现可编辑Excel_vue univer-CSDN博客 https://univer.ai/guides/sheet/getting-started/quickstart 实现步骤&#xff1a; 1、包里面直接写这些 "riophae/vue-treeselect": "0.4.0","univ…

基于深度学习的图像修复系统设计与实现(PyQt5、CodeFormer ffhq-dataset数据集)

&#x1f497;博主介绍&#x1f497;&#xff1a;✌在职Java研发工程师、专注于程序设计、源码分享、技术交流、专注于Java技术领域和毕业设计✌ 温馨提示&#xff1a;文末有 CSDN 平台官方提供的老师 Wechat / QQ 名片 :) Java精品实战案例《700套》 2025最新毕业设计选题推荐…

Matlab 车牌识别技术

1.1设计内容及要求&#xff1a; 课题研究的主要内容是对数码相机拍摄的车牌&#xff0c;进行基于数字图像处理技术的车牌定位技术和车牌字符分割技术的研究与开发&#xff0c;涉及到图像预处理、车牌定位、倾斜校正、字符分割等方面的知识,总流程图如图1-1所示。 图1-1系统总…

为什么自动化测试落地这么难?

最近一直在想一个问题&#xff0c;就是自动化测试落地为什么这么难&#xff1f; 想要找到原因首先我们要明确实施自动化测试的目的&#xff0c;价值&#xff0c;以及要解决的问题是什么&#xff1f;然后我们可以再进一步分析为什么自动化测试很难落地&#xff1f; 实施自动化…

数据采集与数据分析:数据时代的双轮驱动

“在当今这个数据驱动的时代&#xff0c;信息已成为企业决策、市场洞察、科学研究等领域不可或缺的核心资源。而爬虫数据采集与数据分析&#xff0c;作为数据处理链条上的两大关键环节&#xff0c;它们之间相辅相成&#xff0c;共同构成了数据价值挖掘的强大引擎。” 爬虫数据采…

【js逆向专题】12.RPC技术

目录 一. websocket1. 什么是websocket2. websocket的原理3. websocket实现方式1. 客户端2.服务端3. 实际案例1. 案例目标2. 解析思路 二. RPC1. RPC 简介2.Sekiro-RPC1. 使用方法1. 执行方式2.客户端环境3.使用参数说明 2. 测试使用1. 前端代码2. SK API3.python调用代码 三.项…

AR模型时序预测——预测未来(含完整代码)

一、前言 随着数据科学的快速发展&#xff0c;利用自回归&#xff08;AR&#xff09;模型进行时序预测已成为一个热门话题。AR模型因其简洁有效&#xff0c;广泛应用于各类预测任务。本文将介绍一套基于Matlab的AR模型时序预测代码&#xff0c;重点在于如何通过历史数据预测未…

工业相机详解及选型

工业相机相对于传统的民用相机而言&#xff0c;具有搞图像稳定性,传输能力和高抗干扰能力等&#xff0c;目前市面上的工业相机大多数是基于CCD&#xff08;Charge Coupled Device)或CMOS(Complementary Metal Oxide Semiconductor)芯片的相机。 一&#xff0c;工业相机的分类 …