jenkins主从节点安装及pipeline构建

一、背景

通过Jenkins主节点配置的pipeline下发给从节点执行,从而兼容容器化执行

二、安装主节点

docker-compose.yml

  jenkins:
    user: root
    restart: always
    image: jenkinsci/blueocean
    container_name: jenkins
    # network_mode: host
    ports:
      - "8081:8080"
      - "50000:50000"
    environment:
      TZ: Asia/Shanghai
      VERSION: 4
    volumes:
      - /var/docker/jenkins/jenkins_home:/jenkins_home
      - /var/run/docker.sock:/var/run/docker.sock
      - /root/.docker:/root/.docker
      - /etc/localtime:/etc/localtime

直接docker-compose up -d启动即可
在这里插入图片描述
默认装完是2.346.3版本,可以升级到2.4+版本,直接点击首页提示升级即可

三、安装相关依赖

在这里插入图片描述
相关依赖插件:
Docker plugin
Docker Commons Plugin
Docker API Plugin
Docker Pipeline
Permissive Script Security
Build User Vars

以上均安装后重启jenkins,如果提示:
在这里插入图片描述
如果更新过程中,网络不通,可以切换更新源:
Jenkins的update-center,URL为:https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
在这里插入图片描述
上面安装完成后,可以简单测试一下主节点服务是否正常,正常服务如下:

ubuntu2204@ubuntu2204-virtual-machine:/var/docker/jenkins$ curl 127.0.0.1:8081
<html><head><meta http-equiv='refresh' content='1;url=/login?from=%2F'/><script>window.location.replace('/login?from=%2F');</script></head><body style='background-color:white; color:white;'>


Authentication required
<!--
-->

</body></html>  
ubuntu2204@ubuntu2204-virtual-machine:~$ curl 127.0.0.1:50000
Jenkins-Agent-Protocols: JNLP4-connect, Ping
Jenkins-Version: 2.401.1
Jenkins-Session: 7929d409
Client: 172.18.0.1
Server: 172.18.0.3
Remoting-Minimum-Version: 4.7

从节点搭建

新建节点并保存
在这里插入图片描述
保存后,就能得到一串密钥
在这里插入图片描述
从节点agent的docker-compose.yml文件

  jenkins-agent:
    image: jenkins/inbound-agent:alpine
    container_name: jenkins-agent
    restart: always
    network_mode: host
    user: root
    volumes:
     - /var/run/docker.sock:/var/run/docker.sock  # 关键,使得 agent 能访问 docker
     - /var/docker/jenkins/jenkins:/var/jenkins  # 关键,对应于注册时指定的“远程工作目录”,必须挂载到宿主机上,否则会因为指令传参问题卡死任务
     - /var/docker/jenkins/startup-agent.sh:/var/startup.sh  # 因为需要事先安装 Docker Client 等,在启动脚本处注入部分操作
    command: /var/startup.sh  # 用这个挂载进去的脚本启动

确保/var/docker/jenkins目录存在,没有则创建。

/var/docker/jenkins/startup-agent.sh对应的脚本内容为:

!/usr/bin/env bash
 
# alpine install packages
sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
apk add docker-cli tini
 
tini -- /usr/local/bin/jenkins-agent -url http://127.0.0.1:8081 7948f42bc###c1470d802cc02 test

docker-compose up -d后,可以看到
在这里插入图片描述
等一会后,就能看到从节点已连上:
在这里插入图片描述

这里选用的连接方式如下:
在这里插入图片描述
意思是从节点主动连接主节点,默认端口为50000,所以只要确保主节点50000端口放开即可使得从节点连接上。

pipeline测试

new item:选中pipeline类型后点击ok
在这里插入图片描述
pipeline的script输入下文案例并保存
在这里插入图片描述

pipeline {
    agent {
        docker { image 'busybox:latest' }
    }
    stages {
        stage('All') {
            steps {
                echo 'Hello Jenkins and Docker!'
            }
        }
    }
}

点击Build Now
在这里插入图片描述
如图所示:可以发现构建成功,链路闭环
在这里插入图片描述

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

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

相关文章

【算法与数据结构】209.长度最小的子数组

文章目录 题目一、暴力穷解法二、滑动窗口法完整代码 所有的LeetCode题解索引&#xff0c;可以看这篇文章——【算法和数据结构】LeetCode题解。 题目 一、暴力穷解法 思路分析&#xff1a;这道题涉及到数组求和&#xff0c;那么我们很容易想到利用两个for循环来写&#xff0c;…

移动端浏览器性能优化探索

目录 前言 如何衡量卡顿 FPS 与卡顿的关系 新的衡量指标 浏览器动画渲染 GPU扮演的角色 合理避免回流和重绘 浏览器工作流程 解决方案 在移动端的页面开发过程中&#xff0c;我们经常提及页面性能优化、消除页面卡顿的话题&#xff0c;如何确定优化策略&#xff0c;我…

“老年养生”APP的设计与开发

摘要&#xff1a;我国人口老龄化呈上升趋势&#xff0c;老年人口比重增加。这是我国经济发展的一大挑战&#xff0c;也是老年健康产业的一大机遇。随着我国经济发展&#xff0c;越来越多的人开始关注自己的身体&#xff0c;这导致各种关于健康的网络应用层出不穷。但是经过分析…

【python技能树】python简介

1 Python定义 Python 是一种简单易学并且结合了解释性、编译性、互动性和面向对象的脚本语言。Python提供了高级数据结构&#xff0c;它的语法和动态类型以及解释性使它成为广大开发者的首选编程语言。 Python 是解释型语言&#xff1a; 开发过程中没有了编译这个环节。类似于…

Python中打印彩色信息的方法

在Python中&#xff0c;可以使用print()函数打印出彩色信息。在使用print()打印之前&#xff0c;需要调用os标准库对系统进行设置。 1 os标准库 1.1 简介 os是Operating System的简写&#xff0c;即“操作系统”。os标准库是一个操作系统接口模块&#xff0c;提供了使用操作…

学生成绩管理系统(Java)

目录 ​编辑 需求分析&#xff1a; 登录界面(LoginPanel) 主界面(MainApp) 重写 1.班级重写(cs.practics.bean.BjBean.java) 2.课程重写(cs.practics.bean.CourseBean.java) 3.成绩重写(cs.practics.bean.MarkBean.java) 4.学生重写(cs.practics.bean.StudentBean.java…

Spring Cloud 容错机试 Hystrix 服务降级 RestTemplate:

Ribon的服务降级操作 雪崩效应&#xff1a; 如果短信服务炸了后面的所有服务就会起连锁反应造成全部服务挂掉&#xff0c;这就是雪崩效应&#xff0c;那么其实短信服务又不是我们主要业务&#xff0c;这个时候我们可以采用服务降级&#xff0c;服务降级就是暂时的把短信服务停…

springboot服务端接口公网远程调试 - 实现HTTP服务监听【端口映射】

文章目录 前言1. 本地环境搭建1.1 环境参数1.2 搭建springboot服务项目 2. 内网穿透2.1 安装配置cpolar内网穿透2.1.1 windows系统2.1.2 linux系统 2.2 创建隧道映射本地端口2.3 测试公网地址 3. 固定公网地址3.1 保留一个二级子域名3.2 配置二级子域名3.2 测试使用固定公网地址…

安装CHATGPT保姆级教程(windows版)

ai包链接&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1tKuG4OfkewlDRU292vx8mw?pwdtw8t 提取码&#xff1a;tw8t 一、安装篇 安装python&#xff0c;使用软件包中的python安装程序安装后检查是否安装成功&#xff0c;cmd窗口运行命令&#xff1a; python –vers…

python自动化爬虫实战

python自动化爬虫实战 偶然的一次机会再次用到爬虫&#xff0c;借此机会记录一下爬虫的学习经历&#xff0c;方便后续复用。 需求&#xff1a;爬取网站数据并存入的csv文件中&#xff0c;总体分为两步 爬取网站数据存到到csv文件中 1、配置爬虫环境 1.1、下载自动化测试驱动 …

【2023最新】Python + Pycharm + Anaconda安装配置一条龙

【2023最新】Python Pycharm Anaconda安装配置一条龙 文章目录 【2023最新】Python Pycharm Anaconda安装配置一条龙1. Python1.1 Python下载1.2 Python安装1.3 测试 2. Pycharm2.1 Pycharm下载2.2 Pycharm安装配置2.3 你好Pycharm 3. Anaconda3.1 Anaconda下载3.2 Anacond…

【网络】TCP通讯(三次握手、四次挥手;滑动窗口;TCP状态转换;端口复用;TCP心跳检测机制)

前言&#xff1a;建议看着图片&#xff0c;根据文字描述走一遍TCP通讯过程&#xff0c;加深理解。 目录 TCP通信时序&#xff1a; 1&#xff09;建立连接&#xff08;三次握手&#xff09;的过程&#xff1a; 2&#xff09;数据传输的过程&#xff1a; 3&#xff09;关闭连…

opencv4 傅里叶变换

傅里叶变换 ① 高频&#xff1a;变化剧烈的灰度分量&#xff0c;例如边界礁石。 ② 低频&#xff1a;变化缓慢的灰度分量&#xff0c;例如一片大海。 ③ 高通滤波器&#xff1a;只保留高频&#xff0c;会使得图像细节增强。高频边界锐化了&#xff0c;增强了&#xff0c;细节…

网瘾少年转行软件测试,月薪20k? 叛逆少年终归成长...

前言&#xff1a; 高中住校期间沉迷游戏&#xff08;DNF&#xff09;,尤其是高三那年,晚上翻墙出去通宵&#xff0c;白天上课睡觉&#xff0c;高考自然是考了个稀碎&#xff0c;高考结束那个暑假刚开始觉得整个人都自由了&#xff0c;爸妈看我没考上大学&#xff0c;知道我心情…

Sql Server 自动备份

Sql Server 自动备份 文章目录 Sql Server 自动备份1. 打开SQL Server&#xff0c;在管理下找到”维护计划”&#xff0c;右键点击”维护计划向导”&#xff0c;如图&#xff1b;2. 再次点击维护计划向导3. 在选择维护任务下勾选”备份数据库”、”清楚维护任务”4.选择需要备份…

北邮22信通:二叉树显示路径的两种方法 递归函数保存现场返回现场的实例

北邮22信通一枚~ 跟随课程进度每周更新数据结构与算法的代码和文章 持续关注作者 解锁更多邮苑信通专属代码~ 获取更多文章 请访问专栏~ 北邮22信通_青山如墨雨如画的博客-CSDN博客 一.讲解 要想实现二叉树的路径显示&#xff0c;我们要按照…

每日一题——三数之和(双指针)

每日一题 三数之和 题目链接 思路 解析函数原型 首先我们来看一下题目给的函数原型&#xff1a; int** threeSum(int* nums, int numsSize, int* returnSize, int**returnColumnSizes)题目要求我们返回一个二维数组&#xff0c;数组的行数代表着存在多少个满足条件的三元组&…

基于SVM的鸢尾花数据集回归分析

目录 1. 作者介绍2. SVM支持向量机算法2.1 鸢尾花数据集2.2 鸢尾花数据集可视化2.2.1 散点图2.2.2 箱型图2.2.3 三维散点图&#xff08;3D&#xff09; 3. SVM算法实现3.1 完整代码3.2 运行结果3.3 问题与分析 1. 作者介绍 张佳伦&#xff0c;男&#xff0c;西安工程大学电子信…

Cuda | Cudnn安装及其配置

文章目录 &#x1f449;引言&#x1f48e;一、Cuda安装1 选择Cuda版本2下载及运行安装程序3 测试 二、Cudnn安装1、进入官网下载对应cuda版本的cudnn2、下载好相应版本并进行解压安装3、解压完成后4、测试 &#x1f449;引言&#x1f48e; 学习的最大理由是想摆脱平庸&#xf…

stable diffusion图片资源分享和模型推荐,好用的模型有哪些呢?

前言 这篇文章主要是分享我的图片和推荐一些好用的模型&#xff0c;模型不在多在于精&#xff0c;基于几个好的大模型适当下载一下LORA模型&#xff0c;就能画出非常好的图片&#xff0c;多话不说 图片分享 简单展示 详情请看&#xff1a;https://space.bilibili.com/109890…