2023Jenkins连接k8s
首先配置k8s config文件
1.方式获取k8s密钥
cat .kube/config
2.导出方式或者密钥
kubectl config view --raw > k8s-config-admin
pipeline {agent {kubernetes {yaml '''apiVersion: v1kind: Podmetadata:labels:some-label: devopsspec:containers:- name: dockerimage: docker:19.03-dindsecurityContext:privileged: truetty: truehostPID: true- name: kubectlimage: registry.cn-shenzhen.aliyuncs.com/jbjb/dbs:kubectl-128command:- cattty: true'''}}environment {image = "registry.cn-shenzhen.aliyuncs.com/jbjb/dockers:$JOB_NAME-$BUILD_ID"}stages {stage('Get Code') {steps {checkout scmGit(branches: [[name: '*/lld']], extensions: [], userRemoteConfigs: [[credentialsId: 'll', url: 'http://git.xxx.com/new-test.git']])}}stage ("Docker Build") {steps {container('docker') {script {withDockerRegistry(credentialsId: 'mydocker', url: 'https://registry.cn-shenzhen.aliyuncs.com') {docker.build("${image}").push()}}}}}stage('Deploy to Kubernetes') {steps {container('kubectl') {withKubeCredentials(kubectlCredentials: [[credentialsId: 'kjbs', serverUrl: 'https://192.168.0.192:6443']]) {sh 'kubectl get pods'}}}}
}
}
最后一个stps也可以换成这样
stage('Deploy to Kubernetes') {steps {container('kubectl') {withKubeConfig(credentialsId: 'kjbs', serverUrl: 'https://192.168.0.192:6443') {sh 'kubectl get pods'}}}}
withKubeCredentials 和 withKubeConfig 都是 Jenkins Pipeline 中用于指定 Kubernetes 凭据和配置的代码块,但它们之间有一些区别。
1 withKubeCredentials:
- withKubeCredentials 用于指定 Kubernetes 的凭据信息,包括凭据 ID、服务器 URL 等。
- 适用于使用单个凭据来执行与 Kubernetes 相关的操作。
- 指定的凭据信息仅适用于该代码块内的步骤。
2 withKubeConfig:
- withKubeConfig 用于指定完整的 Kubernetes 配置文件(kubeconfig)和凭据。
- 可以使用自定义的 kubeconfig 文件,其中包含集群、用户、上下文等详细信息。
- 适用于需要在多个步骤中重复使用相同的配置文件和凭据的情况。
- withKubeConfig 代码块内的步骤都可以访问指定的 kubeconfig 文件和相关凭据。
根据你可以选择适合场景的代码块。如果只需要在单个步骤中使用简单的凭据信息,那么使用 withKubeCredentials 就足够了。而如果需要在多个步骤中使用相同的配置文件和凭据,使用 withKubeConfig 更为方便。
温馨提示debian12部署的k8s使用containerd运行是,jenkins 动态salve构建时,内核docker in docker时会错
相关文章:

2023Jenkins连接k8s
首先配置k8s config文件 1.方式获取k8s密钥 cat .kube/config 2.导出方式或者密钥 kubectl config view --raw > k8s-config-admin pipeline {agent {kubernetes {yaml apiVersion: v1kind: Podmetadata:labels:some-label: devopsspec:containers:- name: dockerimage: d…...

SpringBoot 入门 参数接收 必传参数 数组 集合 时间接收
接口声明 RestController //表示该类为请求处理类public class HttpDeal {RequestMapping("/login")//这个方法处理哪一个地址过来的请求public String hello(){return "返回给浏览器";}}接收参数 RequestMapping("/login")public String logi…...
【Qt之JSON文件】QJsonDocument、QJsonObject、QJsonArray等类介绍及使用
Qt之JSON相关类介绍 QJsonDocument常用函数枚举类型 QJsonDocument::DataValidation枚举类型 QJsonDocument::JsonFormat构造函数静态函数成员函数示例 QJsonObject常用函数构造函数:成员函数: QJsonObject 与 QVariantMap 相互转换 QJsonArray常用函数构…...
阿里云今年有双十一活动吗?不好说
阿里云今年有双十一活动吗?不好说,因为去年就没有。阿里云双11优惠活动是一项大型的促销活动,每年都有,但是去年没有双十一活动,不知道今年2023年阿里云是否有双11优惠活动。但是阿里云百科aliyunbaike.com猜想&#x…...

【驱动开发】创建设备节点、ioctl函数的使用
一、控制三盏灯的亮灭 头文件: #ifndef __HEAD_H__ #define __HEAD_H__ typedef struct{unsigned int MODER;unsigned int OTYPER;unsigned int OSPEEDR;unsigned int PUPDR;unsigned int IDR;unsigned int ODR; }gpio_t; #define PHY_LED1_ADDR 0X50006000 #def…...

Tomcat启动控制台乱码问题
修改Tomcat/conf/logging.properties...
学习周总结
http://t.csdnimg.cn/DKki2 http://t.csdnimg.cn/NvudJ 项目进度 做了大概的主界面,然后做了一个客户端和服务端的分离,实现了在客户端发送的信息,在服务端能收到;客户端和服务端的制作是我之前有写的一个http://t.csdnimg.cn/…...

如何在不恢复出厂设置的情况下解锁 Android 手机密码?
当您忘记 Android 手机的密码时,可能会有压力,尤其是当您不想恢复出厂设置并删除所有数据时。但是,有一些方法可以在不诉诸如此激烈的步骤的情况下解锁手机。我们将在这篇文章中教您如何在不恢复出厂设置的情况下解锁 Android 手机密码。我们…...

移动设备管理对企业IT 安全的增强
移动设备管理 (MDM) 是通过定义策略和部署安全控制(如移动应用程序管理、移动内容管理和条件 Exchange 访问)来管理移动设备的过程。 完整的MDM解决方案可以管理在Android,iOS,Windows,macOS&a…...

app分发的一些流程
应用分发的流程通常包括以下步骤: 开发应用程序:首先,您需要开发您的应用程序。这包括编写代码、设计用户界面、测试应用程序等等。确保您的应用程序符合各个应用商店的规范和要求,以确保顺利通过审核。 准备应用材料:…...
深入浅出讲解Spring IOC和DI的区别
Spring IOC和DI的区别 一,介绍 前言 很多人都会把ioc和di说成同一个东西,其实IOC和DI虽然在概念上可以笼统地视为同一事物,但其本质上存在区别。IOC(Inverse of Control,控制反转)从容器的角度描述&#…...

文件操作 IO
文件(File) 狭义的文件: 指的是硬盘上的文件和目录 广义的文件: 泛指计算机中很多软硬件资源(操作系统中把很多硬件和软件资源抽象成了文件, 按照文件的方式同意管理) 本章内容只讨论狭义的文件 路径 绝对路径: 以c: , d: 盘符开头的路径相对路径: 以当前所在的目录为基准(…...
ARouter - 组件化通信方案
官网 https://github.com/alibaba/ARouter/blob/master/README_CN.md 项目简介 一个用于帮助 Android App 进行组件化改造的框架 —— 支持模块间的路由、通信、解耦 功能介绍 支持直接解析标准URL进行跳转,并自动注入参数到目标页面中支持多模块工程使用支持添…...

Linux中常见的权限问题
目录 前言1. 目录权限2. umask3. 粘滞位结语 前言 在了解完上一篇文章 Linux权限的理解与操作 之后,还有一些比较常见的权限问题需要我们去了解。其中包括目录的权限,umask 以及 粘滞位的使用。 1. 目录权限 问题一:进入一个目录࿰…...

【技术分享】RK356X Ubuntu 推流USB摄像头
本文适用与触觉智能所有RK356X ubuntu系统的主板。 IDO-SBC3566基于瑞芯微RK3566研发的一款高性能低功耗的智能主板,采用四核A55,主频高达1.8GHz,专为个人移动互联网设备和AIOT设备而设计,内置了多种功能强大的嵌入式硬件引擎,为…...
介绍一下rabbitMq应用场景
任务队列:RabbitMQ可以将待处理的任务放入队列中,再由多个工作进程异步地执行这些任务。 日志处理:RabbitMQ可以通过发布-订阅模式将日志消息分发到多个消费者,并可以灵活地控制消息的优先级和过滤条件。 实时消息处理ÿ…...

IoT 物联网共享充电桩场景中设备资产定位和地理围栏开发实践
基于经纬度的设备资产定位和地理围栏在物联网场景中应用广泛 01 物联网 GEO 场景架构方案 首先,IoT 终端设备通过卫星定位模块获取当前经纬度;然后,将坐标信息实时上报到物联网平台;最后,存储到 Redis GEO 数据库中。 …...

【Qt进阶之自定义控件】使用QListWidget实现自定义Item效果
目的 Q:如何在Qt库的基础上,实现自定义控件呢? A:根据官方文档回答,就是继承需实现的控件,然后实现自定义功能。 以下是实现QListWidget控件的自定义item。 先看下最终效果是如何: listItem 主…...

【iOS】UITableView总结(Cell的复用原理、自定义Cell、UITableViewCell协议方法)
UITableView 列表的特点: 数据量大样式较为统一通常需要分组垂直滚动通常可视区只有一个 -> 视图的复用 UITableViewDataSource UITableView作为视图,只负责展示,协助管理,不管理数据 需要开发者为UITableView提供展示所需…...
shell之常见网络命令介绍
shell之常见网络命令介绍 1)ifconfig 用于配置网络接口。可以用于开启、关闭和设置网络接口的参数,如IP地址、子网掩码、MAC地址等。 ifconfig eth0 192.168.1.1 netmask 255.255.255.0 up上述命令将设置eth0网络接口的IP地址为192.168.1.1,子…...

深入剖析AI大模型:大模型时代的 Prompt 工程全解析
今天聊的内容,我认为是AI开发里面非常重要的内容。它在AI开发里无处不在,当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗",或者让翻译模型 "将这段合同翻译成商务日语" 时,输入的这句话就是 Prompt。…...
《Playwright:微软的自动化测试工具详解》
Playwright 简介:声明内容来自网络,将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具,支持 Chrome、Firefox、Safari 等主流浏览器,提供多语言 API(Python、JavaScript、Java、.NET)。它的特点包括&a…...
大学生职业发展与就业创业指导教学评价
这里是引用 作为软工2203/2204班的学生,我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要,而您认真负责的教学态度,让课程的每一部分都充满了实用价值。 尤其让我…...

有限自动机到正规文法转换器v1.0
1 项目简介 这是一个功能强大的有限自动机(Finite Automaton, FA)到正规文法(Regular Grammar)转换器,它配备了一个直观且完整的图形用户界面,使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...
基于matlab策略迭代和值迭代法的动态规划
经典的基于策略迭代和值迭代法的动态规划matlab代码,实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...

【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习
禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍流程步骤1. 输入数据2. 特征选择3. 模型训练4. I-Genes 评分计算5. 输出结果 IntelliGenesR 安装包1. 特征选择2. 模型训练和评估3. I-Genes 评分计…...
比特币:固若金汤的数字堡垒与它的四道防线
第一道防线:机密信函——无法破解的哈希加密 将每一笔比特币交易比作一封在堡垒内部传递的机密信函。 解释“哈希”(Hashing)就是一种军事级的加密术(SHA-256),能将信函内容(交易细节…...
[特殊字符] Spring Boot底层原理深度解析与高级面试题精析
一、Spring Boot底层原理详解 Spring Boot的核心设计哲学是约定优于配置和自动装配,通过简化传统Spring应用的初始化和配置流程,显著提升开发效率。其底层原理可拆解为以下核心机制: 自动装配(Auto-Configuration) 核…...

RFID推动新能源汽车零部件生产系统管理应用案例
RFID推动新能源汽车零部件生产系统管理应用案例 一、项目背景 新能源汽车零部件场景 在新能源汽车零部件生产领域,电子冷却水泵等关键部件的装配溯源需求日益增长。传统 RFID 溯源方案采用 “网关 RFID 读写头” 模式,存在单点位单独头溯源、网关布线…...

node 进程管理工具 pm2 的详细说明 —— 一步一步配置 Ubuntu Server 的 NodeJS 服务器详细实录 7
前言 我以 Ubuntu Server 打造的 NodeJS 服务器为主题的系列文章,经过五篇博客,我们顺利的 安装了 ubuntu server 服务器,并且配置好了 ssh 免密登录服务器,安装好了 服务器常用软件安装, 配置好了 zsh 和 vim 以及 通过 NVM 安装…...