【Jenkins流水线搭建】
Jenkins流水线搭建
- 01、SpringBoot项目 - Jenkins基于Jar持续集成搭建文档
- 基于手动方式发布项目
- 基于dockerfile
- 基于jenkins + dockerfile + jenkinsfile +pieline
- 基于jenkins + jar方式的发布
- 01、环境说明
- 01、准备项目
- 02、准备服务器
- 03、安装git
- 04、安装jdk1.8
- 05、安装maven依赖
- 06、安装jenkins
- 07、启动jenkins
- 08、解锁 Jenkins
- 09、自定义Jenkins
- 10、创建管理员账号
- 11、实例配置
- 12、Jenkins控制面板
- 13、配置镜像源
- 14、Jenkins插件安装
- 1、jekins汉化插件安装
- 2、安装Credentials Binding插件
- 3、git插件安装
- 15、配置凭据 - 全局Git账号和密码管理
- 16、配置环境变量
- 配置jdk
- 配置Maven
- 17、Jenkins关联环境变量和设置常量
- 02、基于Jenkins的jar的方式发布和部署
- 01、准备项目
- 02、创建代码仓库
- 03、项目关联仓库
- 04、在jenkins创建一个任务
- 05、编写shell脚本和jenkins关联执行
- 06、开始构建即可
- 代码
- 02、基于Jenkins的docker的方式发布和部署
- 01、Pipeline插件安装
- 02、利用Pipeline自动化发布服务
- 1、点击新建任务,填写项目名称,选择流水线,点击确认
- 2、开始构建
- 3、配置端口映射
- 4、配置项目名称
- 5、该有的参数都已经准备完毕,接下来要做的就是拉取代码
- 6、项目配置好以后
- 03、创建Jenkinsfile
- 04、然后在jenkins的控制台中
01、SpringBoot项目 - Jenkins基于Jar持续集成搭建文档
基于手动方式发布项目
-
开发代码
-
打包-jar
-
把jar上传到服务器
-
把上一次的服务杀掉,停止
-
启动运行新的jar
基于dockerfile
-
开发代码
-
编写Dockerfile (一次性)
-
mvn clean package 自动生成镜像
-
手动或者使用idea Docker插件,创建容器,启动容器
学习成本:Docker
基于jenkins + dockerfile + jenkinsfile +pieline
- 开发代码
- 搭建jenkins环境 (一次性)
- 编写Dockerfile (一次性) 和Jenkinsfile规则(一次性)
- 上传代码
- jenkins控制台启动服务 (触发器)
学习成本:Docker ,Jenkins ,Pieline 触发器
基于jenkins + jar方式的发布
-
开发代码
-
搭建jenkins环境 (一次性)
-
创建一个任务 ,创建shell脚本
-
上传代码
-
jenkins控制台启动服务 (触发器)
01、环境说明
| 服务 | 所需软件 | 部署地址 |
|---|---|---|
| 持续集成服务 | Jenkins 2.319.1、Maven3.6.3,Git | 47.107.225.126 |
| 应用测试服务 | JDK1.8 | 47.107.225.126 |
01、准备项目
准备一个springboot + Dockerfile项目
02、准备服务器
服务器配置建议:4core + 8G 或者 4core + 16G 越高越好。
提醒:学生机就不要来试了,估计docker都跑不起来就卡死了
03、安装git
查看是否已经安装
git --version
使用yml安装
yum -y install git

04、安装jdk1.8
查看当前是否有安装jdk
- maven和项目,jekenis都java项目肯定需要java环境
java -version
安装jdk1.8
yum install java-1.8.0-openjdk* -y
- 安装完以后,默认的路径是: /usr/lib/jvm
- 提醒:建议不要安装jdk11。
05、安装maven依赖
-
1、前往官网下载自己想要的maven包
地址: http://maven.apache.org/download.cgi
各版本地址:https://archive.apache.org/dist/maven/maven-3/
我以apache-maven-3.6.3-bin.tar.gz为例,
下载地址: https://archive.apache.org/dist/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
-
2、将maven上传liunx服务器上,我这里上传到了
/www/servers,当前的安装目录root如下:cd /www/serversmkdir -p /www/servers/maven cd /www/servers/maven -
3、上传完毕,执行解压
wget https://archive.apache.org/dist/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz如果下载很慢建议用手动的方式上传到
/www/servers/maven#解压文件 tar -xzvf apache-maven-3.6.3-bin.tar.gz #创建目录,用于存放maven mkdir -p /opt/maven #将解压完的maven文件剪切到刚刚创建的目录下 mv apache-maven-3.6.3/* /opt/maven
建议配置:阿里云的maven镜像。https://developer.aliyun.com/mvn/guide 步骤:在conf/setttings.xml中配置如下:
<mirror><id>aliyunmaven</id><mirrorOf>*</mirrorOf><name>aliyunrepositoty</name><url>https://maven.aliyun.com/repository/public</url> </mirror>
-
4、配置maven环境变量
安装完maven,还需要配置java和maven的环境变量。就放在文件的尾部即可首先打开环境配置文件
vim /etc/profile配置内容
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk export MAVEN_HOME=/opt/maven export PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin执行保存生效
source /etc/profile查看maven版本
mvn -v[root@iZwz9gi039o35ikykbyj1tZ maven]# mvn -v Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f) Maven home: /opt/maven Java version: 1.8.0_312, vendor: Red Hat, Inc., runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-1.el7_9.x86_64/jre Default locale: zh_CN, platform encoding: UTF-8 OS name: "linux", version: "3.10.0-1160.49.1.el7.x86_64", arch: "amd64", family: "unix"
06、安装jenkins
1、官网地址
https://www.jenkins.io/download/
相关文章:
【Jenkins流水线搭建】
Jenkins流水线搭建 01、SpringBoot项目 - Jenkins基于Jar持续集成搭建文档基于手动方式发布项目基于dockerfile基于jenkins + dockerfile + jenkinsfile +pieline基于jenkins + jar方式的发布01、环境说明01、准备项目02、准备服务器03、安装git04、安装jdk1.805、安装maven依赖…...
PHP 基础介绍
PHP 学习资料 PHP 学习资料 PHP 学习资料 PHP 是一种广泛使用的开源服务器端脚本语言,尤其适合 Web 开发,能轻松嵌入 HTML 中,生成动态网页内容。接下来,让我们一起了解 PHP 的基础内容。 一、PHP 的安装与配置 在开始编写 PH…...
DeepSeek如何重塑我的编程学习:计算机新生的AI实践
目录 🚀前言🌟邂逅DeepSeek:从困惑到惊喜💯初学编程的困境💯DeepSeek的优势 🖊️DeepSeek在编程学习中的运用💯注释💯算法逐步分析💯调试帮助💯跨语言迁移学习…...
spring boot和spring cloud的关系
Spring Boot和Spring Cloud之间的关系可以概括为构建和扩展的关系,其中Spring Boot提供了基础,而Spring Cloud在此基础上提供了分布式系统和微服务架构所需的扩展和工具。以下是两者关系的详细阐述: 一、基础与扩展 Spring Boot:…...
ThreadLocal原理和存在问题
ThreadLocal 的工作原理 ThreadLocal 是 Java 提供的一个类,用于在多线程环境下存储线程局部变量。每个线程都可以独立地更改存储在其 ThreadLocal 变量中的值,而不会影响其他线程中的变量副本。ThreadLocal 的实现原理基于 Thread 类中的 ThreadLocal.…...
用Echarts的柱状图实现圆柱体效果
用Echarts的柱状图实现圆柱体效果 在数据可视化的世界里,Echarts凭借其强大的功能和丰富的特性,成为众多开发者的首选工具。本文将深入探讨如何利用Echarts的柱状图来实现独特的圆柱体效果,通过详细剖析代码,让大家了解其中的实现…...
Docker 常用命令基础详解(一)
一、Docker 初相识 在当今数字化时代,软件开发和部署的效率与灵活性成为了关键因素。Docker,作为一款开源的应用容器引擎,犹如一颗璀璨的明星,照亮了软件开发与部署的道路,为开发者们带来了前所未有的便利。它就像是一…...
Java并发中的CAS机制:原理、应用与挑战(通俗易懂版)
上一期文章内容:Java并发中的乐观锁与悲观锁, 本期文章我们来讲一下Java并发中的CAS机制 一、从银行账户案例理解CAS CAS 是一种乐观锁机制,用于在不使用锁的情况下实现多线程对共享资源的并发访问。 它包含三个操作数:内存位置&a…...
腾讯发布混元-3D 2.0: 首个开源高质3D-DiT生成大模型
在之前的文章中已经和大家介绍过腾讯HunYuan-3D 1.0,感兴趣的小伙伴可以点击下面链接阅读~ HunYuan-3D 是首个开源高质3D-DiT生成大模型,几何与纹理解藕生成,一键将创意具象化。 2.0模型架构图及介绍 2.0模型将几何和纹理生成解耦࿰…...
【机器学习】线性回归与一元线性回归
线性回归与一元线性回归 V1.1线性回归问题线性方程的最优解一元线性回归一元线性回归的方程一元线性回归距离衡量方法一元线性回归的最优化求解一元线性回归的最小二乘法解法 V1.1 线性回归问题 线性回归问题就是找一条线或超平面,并使用线或超平面来描述数据分布…...
哈希表-两个数的交集
代码随想录-刷题笔记 349. 两个数组的交集 - 力扣(LeetCode) 内容: 集合的使用 , 重复的数剔除掉,剩下的即为交集,最后加入数组即可。 class Solution {public int[] intersection(int[] nums1, int[] nums2) {Set<Integer…...
望远镜成像系统--科学评价光学镜头
望远镜是一种利用透镜或反射镜以及其他光学器件观测遥远物体的光学仪器。其原理是通过透镜的折射或反射镜的反射,将光线聚焦成像,再经过一个放大目镜进行观察。日常生活中的光学望远镜又称“天文望远镜”。1608年,荷兰的一位眼镜商汉斯利伯希…...
服务器延迟给视频网站造成的影响
在数字化时代中,网络视频已经成为人们日常娱乐和获取信息的重要平台,网络视频的流畅性会影响着用户的体验度,那么,当服务器出现延迟会对视频网站造成哪些影响呢?本文就来共同了解一下吧! 当所使用的服务器由…...
C++算法竞赛基础语法-9
快速排序是一种高效的排序算法,由C. A. R. Hoare在1960年提出,基本思想是分治法(Divide and Conquer)策略,通过递归将一个大问题分解为若干个较小的子问题,然后合并这些子问题的解来解决原始问题 快速排序…...
国产编辑器EverEdit - 极简追梦人的福音:迷你查找
1 迷你查找 1.1 应用场景 某些场景下,用户不希望调出复杂的查找对话框,此时可以使用迷你查找窗口。 1.2 使用方法 选择主菜单查找 -> 迷你查找,或使用快捷键Ctrl Alt F,会在右上角弹出迷你查找窗口,如下图所示…...
Flutter 异步编程利器:Future 与 Stream 深度解析
目录 一、Future:处理单次异步操作 1. 概念解读 2. 使用场景 3. 基本用法 3.1 创建 Future 3.2 使用 then 消费 Future 3.3 特性 二、Stream:处理连续异步事件流 1. 概念解读 2. 使用场景 3. 基本用法 3.1 创建 Stream 3.2 监听 Stream 3.…...
数据结构 day05
数据结构 day05 5. 队列5.3. 链式队列5.3.1. 特征5.3.2. 代码实现 6. 双向链表6.1. 特性6.2. 代码实现 5. 队列 5.3. 链式队列 5.3.1. 特征 逻辑结构:线性结构 存储结构:链式存储 操作:创建、入列、出列、判空、清空 5.3.2. 代码实现 头文…...
股票数据接口API实例代码python、JAVA等多种语言演示免费获取实时数据、历史数据、CDMA、KDJ等指标数据配有API说明文档
本文中所有接口均可直接在浏览器打开获取数据,为了便于大家验证有效性,已经做好了超链接,直接点击即可! 沪深两市股票列表 API接口链接(可点击验证):https://api.mairui.club/hslt/list/b…...
【Map vs Set】:Java数据存储的“双子星”对决
个人主页:♡喜欢做梦 欢迎 👍点赞 ➕关注 ❤️收藏 💬评论 目录 🍰一、搜索 🍮1.概念 🍮2.模型 🍰二、Map 🍨1.什么是Map? 🍨2.Map的实例化 &…...
ollama+langchain+deepseek本机跑通大模型
一、部署deepseek Ollama,这是是一个开源的大语言模型平台,它允许用户在本地环境中运行、创建和共享大型语言模型。Ollama提供了丰富的功能和特性,使得用户可以在自己的计算机上轻松地部署和运行大型语言模型。官网:https://ollam…...
用AutoHotkey实现键盘控制鼠标光标:高效自定义方案
1. 项目概述与核心需求解析如果你曾经遇到过鼠标突然失灵、在狭小的办公桌上施展不开、或者笔记本触摸板漂移得让你想砸电脑的情况,那么你大概能理解那种抓狂的感觉。作为一个长期与多显示器、复杂工作流打交道的效率工具爱好者,我发现自己对鼠标的依赖程…...
基于VuePress构建开源知识库:从静态站点到自动化部署
1. 项目概述:一个开源知识库的诞生与价值最近在整理个人技术笔记和项目文档时,我一直在思考一个问题:如何构建一个既易于维护、又能灵活扩展,同时还能对外开放协作的知识库?市面上的商业Wiki或文档平台虽然功能强大&am…...
基于Next.js 14与Vercel AI SDK构建企业级全栈AI聊天应用
1. 项目概述:一个可投入生产的全栈AI聊天应用最近在GitHub上看到一个挺有意思的项目,叫“ChatGPT Clone”。这可不是一个简单的玩具或者演示,而是一个功能相当完备、可以直接部署上线的全栈AI聊天应用。它用上了当前前端领域最热门的Next.js …...
3秒获取百度网盘提取码:baidupankey智能工具的终极解决方案
3秒获取百度网盘提取码:baidupankey智能工具的终极解决方案 【免费下载链接】baidupankey 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 在数字资源共享日益频繁的今天,百度网盘提取码成为获取资料的关键屏障。据统计,超…...
AI平台竞争中的合谋与网络效应:市场博弈的底层逻辑分析
1. 项目概述:当AI平台开始“默契”时,市场会发生什么? 最近和几位做投资和产品战略的朋友聊天,话题总绕不开一个现象:几个头部的AI大模型平台,无论是定价策略、功能迭代节奏,还是对开发者的扶持…...
Taotoken API Key 的精细化管理与访问控制实践
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 Taotoken API Key 的精细化管理与访问控制实践 在团队协作与多项目并行的开发环境中,大模型 API 密钥的管理往往成为一…...
2026届学术党必备的降AI率神器实测分析
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 作为一款基于自然语言处理跟深度学习技术的智能辅助工具,AI 写作软件可以快速生成…...
教育AI信任构建:以透明度与可解释性化解多利益相关者冲突
1. 项目概述:当AI走进课堂,我们到底在担心什么?最近几年,教育领域里关于AI的讨论热度一直没降下来。从最初的智能题库、自适应学习系统,到如今能批改作文、模拟对话的生成式AI,技术迭代的速度远超我们的想象…...
保姆级避坑指南:速腾RS-Hellos-16P雷达驱动在Ubuntu20.04下的完整配置流程(含ROS Noetic)
速腾RS-Hellos-16P雷达Ubuntu20.04配置全攻略:从驱动安装到Cartographer建图的避坑指南 第一次接触速腾激光雷达和ROS Noetic的开发者,往往会在配置过程中遇到各种意想不到的问题。本文将带你一步步完成从驱动安装到Cartographer建图的完整流程ÿ…...
Sublime Text集成AI编程助手:Nano Bots插件深度配置与实战
1. 项目概述:当Sublime Text遇上Nano Bots 如果你是一个重度依赖Sublime Text的开发者,同时又对AI辅助编程抱有极大的热情,那么你很可能已经厌倦了在编辑器、浏览器和终端之间来回切换的繁琐。 icebaker/sublime-nano-bots 这个项目&#x…...
