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

Jenkins 部署与使用

定义

Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建、测试和部署软件。支持各种运行方式,可通过系统包、Docker 或者通过一个独立的 Java 程序。

版本要求

  • Jenkins 2.60.1:第一个需要Java 8 的LTS 版本。
  • Jenkins 2.357 :开始需要Java 11。
  • Jenkins 2.463 :使用Java 17 或更高版本。

建议使用高版本, 很多插件都已经不支持低版本了, 查看所有版本

下载

这里以 2.504.2 版本为例, 下载 所需版本的jenkins.war
在这里插入图片描述
linux 可以使用命令下载

wget http://mirrors.jenkins.io/war-stable/2.504.2/jenkins.war

部署

参考文档

Jenkins的Web应用程序ARchive(WAR)文件版本可以安装在任何支持Java的操作系统或平台上。

启动命令

java -jar jenkins.war --httpPort=8080

应用默认端口为 8080 , 但是这个端口大多数情况下是会被其他应用占用的, 可以通过 --httpPort 参数指定应用端口

启动成功后, 如果是初次启动, 会打印管理员的密码, 如下所示,同时告诉用户密码存储在哪个文件中, 一般为 ~/.jenkins/secrets/initialAdminPassword

在这里插入图片描述

访问 http://localhost:8080/ , 用户名默认为 admin , 密码存储在 ~/.jenkins/secrets/initialAdminPassword 文件中

在这里插入图片描述

接下来就是插件安装了, 新手入门选择推荐安装, 也可以后面从 系统管理-》插件管理 添加所需的插件

在这里插入图片描述

以下是软件默认推荐的一些插件

在这里插入图片描述

安装完默认插件后, 可以自行创建用户, 或者直接使用 admin 用户

在这里插入图片描述

配置完用户, 进行根地址的配置, 默认值为 http://host:httpPort/

在这里插入图片描述

到这里, jenkins 就已经安装完毕了

在这里插入图片描述

使用 admin 或者自行创建的账号登录

在这里插入图片描述

汉化

插件库提供了一个 Locale 插件支持汉化,但是有很多问题

系统管理 -》 插件管理 - 》 Available plugins 搜索 Locale , 选中点击安装, 重启Jenkins 生效

在这里插入图片描述

简单使用

构建普通项目

新建任务, 选择构建一个自由风格的软件项目

在这里插入图片描述

填写项目名称, 配置项目信息

在这里插入图片描述

由于git 凭证还没创建, 配置 git 仓库时会报错, 点击添加按钮,将凭据录入,重新选择凭据即可

在这里插入图片描述

配置完成, 点击保存, 然后点击立即构建, 左下方会有一条构建记录, 可以查看其构建详情

在这里插入图片描述

构建成功后, 可以在工作空间看到拉下来的代码结构, 到这里简单的Jenkins (拉取git代码)就已经完成了, 如果需要有其他的动作, 点击配置, 重新进行流程的编排。

在这里插入图片描述

构建 maven 项目

使用Jenkins 构建maven 项目需要安装插件,
系统管理 -》 插件管理 - 》 Available plugins ,搜索 Maven IntegrationVersion, 点击安装, 安装完成后选择重启Jenkins

在这里插入图片描述

在这里插入图片描述

系统管理 -》 全局工具配置, 配置maven

在这里插入图片描述

系统管理 -》 全局工具配置, 配置jdk , jdk 配置了多个的情况下新建任务时可以选择jdk版本

在这里插入图片描述

新建任务, 可以看到多了一个可选择项,选择构建一个maven项目

在这里插入图片描述

配置 git 仓库

在这里插入图片描述

配置jdk

在这里插入图片描述

配置maven 操作

在这里插入图片描述

保存配置, 点击立即构建, 可以在工作空间中看到, maven 构建出来的 target

增加后续操作, 在下面几个配置项中配置, 如:上传到远程服务器,更新服务等
在这里插入图片描述

在这里插入图片描述

http://www.lryc.cn/news/575652.html

相关文章:

  • 在Visual Studio使用Qt的插件机制进行开发
  • Nordic nRF54L15 SoC对包含电池监测、中断处理和电源轨控制的定制 nPM1300 示例
  • UE Universal Camera 相机插件-限制镜头在区域内移动
  • 【Docker基础】Docker容器管理:docker restart详解
  • 使用Charles中文版抓包工具进行高效的API调试与性能优化
  • 【机器学习深度学习】线性代数
  • 网络分层模型与协议体系技术研究报告
  • PDF Kit 使用示例(HarmonyOS)
  • dockers virbox 安装
  • 亚矩阵云手机多开赋能Snapchat矩阵运营:技术原理与场景化破局
  • Linux修改uboot启动延时方法详细攻略,触觉智能RK3568开发板演示
  • Go语言与云原生:Kubernetes Operator开发全流程
  • 【钓鱼预警】HW主题,无需多言
  • LLM复杂记忆存储-多会话隔离案例实战
  • swiftUI iOS16和iOS15兼容
  • 设计模式 | 原型模式
  • 专线服务器具体是指什么?
  • Nginx配置文件介绍和基本使用
  • Excel处理控件Aspose.Cells教程:如何使用 Java 将图片添加到 Excel
  • 从零构建vue3项目(二)
  • 机器学习在智能农业中的创新应用与未来趋势
  • 永磁无刷电机旋转原理
  • 进程和线程的区别?
  • 128.最长连续序列
  • 本地开发Anchor智能合约:效率翻倍的秘密
  • windows下 tomcat的安装部署
  • 机器学习17-发展历史补充
  • 第一章-人工智能概述-机器学习基础与应用(1/36)
  • spring-ai 1.0.0 (1)模型调用能力
  • day43 复习日(猫狗图像分类)