Jenkins 教程(一)实现自动化打包及邮件通知

简介: 个人不喜欢装腔作势一堆专业术语放上去,让大多数人看不懂来提升逼格(所谓的专家),所以我简单的介绍jenkins是干啥的。本文使用jenkins,就是让它把git仓库里的东西取出来,然后在jenkins容器中编译打包,然后执行脚本,可以是运行jar等,根据自身情况量身定制脚本。

个人不喜欢装腔作势一堆专业术语放上去,让大多数人看不懂来提升逼格(所谓的专家),所以我简单的介绍jenkins是干啥的。本文使用jenkins,就是让它把git仓库里的东西取出来,然后在jenkins容器中编译打包,然后执行脚本,可以是运行jar等,根据自身情况量身定制脚本。

下载

官方下载链接:https://jenkins.io/download/

windows可以直接下载msi安装,linux的话rpm或者直接下载war包。我在这里用的war包。

启动

因为它是个jar包,所以我们用命令java -jar jenkins.war来启动。默认8080端口。

如果你希望它不在8080端口上启动,那使用命令java -jar jenkins.war httpPort=8888

启动后续步骤

  1. 启动后浏览器访问8888端口。

  2. 他会让你填写一个密匙,并告诉你密匙在哪个文件。

  3. 然后让你安装一些工具,直接点击默认按照即可。(可按需求来按照)

  4. 创建用户

img_718a6944635432921f983e686fe936fb.png
  1. 一路next


    img_5521ddc1d6909ebb8d7b076d9898f322.png

配置环境

因为我们需要编译java项目,所以jdk和maven也必须在容器里进行安装。

我们进入 :系统管理->全局工具配置

jdk安装:
img_222b28563b5cf15d102d9b0a116f335f.png
maven安装:
img_38ba776623f2f9758171dc74acb24897.png
什么?想在项目编译失败了给你发送邮件提示?

进入: 系统管理->系统设置

首先我们看到的是


img_e12517c87485f77d356fe649c7e62248.png

主目录是什么呢?你编译的项目就放在这里面。

进入正题,配置邮箱。

img_4c2601071adc038ee51ee8ed21d2227e.png

img_729206e37f66cc28a763b5a46df82655.png
img_0a7fbb93ea33945111e2d9036defc29f.png

至于没有实现过邮箱发送邮件的朋友,可以看我之前的文章了解一下。Java 发送qq邮件基础和封装

开始项目

img_51f3a16960334dd3bca71f743d4ed493.png
img_04ee91dd0db52fb571dcf9c024a76619.png
img_0e56f517f116466e9e45aaa06c16022f.png

应用并保存

img_1fba632dde06c9d6b0468201c538dabf.png
img_45fe00aec09810a2613f43f5f87dda8d.png

点这个小红点可以查看构建日志。

img_35d291ac84e7888b66d0ada5b0b9e1b2.png

成功部署邮件:

img_fc5c6ea9683e91e8633f61ed6eb1c86e.png

部署失败邮件:

img_fc8f0df5233ce63537acdc8f151261bf.png

建议

后面的一小点建议,尽量在本地上部署jenkins,然后将可运行jar包上传到服务器。因为把jenkins部署在服务器可能会存在maven下载失败的问题,需要搭建maven私服来解决,很麻烦。

至于如何上传到服务器,会在下文介绍。

介绍下我的所有文集:

流行框架

SpringCloud
springboot
Spring Security
nginx
redis

底层实现原理:

Java NIO教程
Java reflection 反射详解
Java并发学习笔录
Java Servlet教程
jdbc组件详解
Java NIO教程
Java语言/版本 研究

相关文章
|
29天前
|
存储 Shell Linux
快速上手基于 BaGet 的脚本自动化构建 .net 应用打包
本文介绍了如何使用脚本自动化构建 `.net` 应用的 `nuget` 包并推送到指定服务仓库。首先概述了 `BaGet`——一个开源、轻量级且高性能的 `NuGet` 服务器,支持多种存储后端及配置选项。接着详细描述了 `BaGet` 的安装、配置及使用方法,并提供了 `PowerShell` 和 `Bash` 脚本实例,用于自动化推送 `.nupkg` 文件。最后总结了 `BaGet` 的优势及其在实际部署中的便捷性。
60 10
|
2月前
|
持续交付 jenkins Devops
WPF与DevOps的完美邂逅:从Jenkins配置到自动化部署,全流程解析持续集成与持续交付的最佳实践
【8月更文挑战第31天】WPF与DevOps的结合开启了软件生命周期管理的新篇章。通过Jenkins等CI/CD工具,实现从代码提交到自动构建、测试及部署的全流程自动化。本文详细介绍了如何配置Jenkins来管理WPF项目的构建任务,确保每次代码提交都能触发自动化流程,提升开发效率和代码质量。这一方法不仅简化了开发流程,还加强了团队协作,是WPF开发者拥抱DevOps文化的理想指南。
49 1
|
2月前
|
Kubernetes jenkins 持续交付
Jenkins 插件生态:提升自动化能力
【8月更文第31天】Jenkins 是一个开源的持续集成/持续交付(CI/CD)平台,广泛应用于软件开发的各个阶段。Jenkins 的一大特色就是其丰富的插件生态系统,这些插件极大地扩展了 Jenkins 的功能,使其能够适应各种各样的应用场景。本文将深入探讨 Jenkins 的插件生态系统,并指导如何选择和配置插件以满足特定需求。
65 1
|
2月前
|
测试技术 开发工具 虚拟化
iOS自动化测试方案(一):MacOS虚拟机保姆级安装Xcode教程
这篇文章提供了一份保姆级的教程,指导如何在MacOS虚拟机上安装Xcode,包括环境准备、基础软件安装以及USB扩展插件的使用,以实现iOS自动化测试方案的第一步。
37 0
iOS自动化测试方案(一):MacOS虚拟机保姆级安装Xcode教程
|
2月前
|
jenkins Linux 持续交付
在Linux中,如何使用Jenkins和Ansible进行虚拟化环境的自动化和持续集成/持续部署(CI/CD)?
在Linux中,如何使用Jenkins和Ansible进行虚拟化环境的自动化和持续集成/持续部署(CI/CD)?
|
2月前
|
持续交付 jenkins C#
“WPF与DevOps深度融合:从Jenkins配置到自动化部署全流程解析,助你实现持续集成与持续交付的无缝衔接”
【8月更文挑战第31天】本文详细介绍如何在Windows Presentation Foundation(WPF)项目中应用DevOps实践,实现自动化部署与持续集成。通过具体代码示例和步骤指导,介绍选择Jenkins作为CI/CD工具,结合Git进行源码管理,配置构建任务、触发器、环境、构建步骤、测试及部署等环节,显著提升开发效率和代码质量。
48 0
|
2月前
|
Kubernetes jenkins 持续交付
Jenkins 与 Kubernetes 的集成:实现高效的资源管理和自动化部署
【8月更文第31天】随着微服务架构的普及,Kubernetes 已经成为了容器编排的事实标准。Kubernetes 提供了一种强大的方式来管理容器化的应用程序,而 Jenkins 则是持续集成与持续部署(CI/CD)领域的一个重要工具。将 Jenkins 与 Kubernetes 集成,不仅可以充分利用 Kubernetes 的资源管理能力,还能通过 Jenkins 实现自动化构建、测试和部署,从而提高开发效率和部署速度。本文将详细介绍如何将 Jenkins 集成到 Kubernetes 环境中,并提供具体的代码示例。
96 0
|
2月前
|
jenkins 持续交付 开发工具
自动化开发之旅:Docker携手Jenkins,与Git和Tomcat共舞持续集成
【8月更文挑战第13天】在软件开发中,持续集成(CI)通过自动化构建、测试与部署提升效率与稳定性。Docker、Jenkins、Git和Tomcat构成CI的黄金组合:`git push`触发Jenkins作业,利用Docker确保环境一致性,最终将应用部署至Tomcat。首先配置Git Webhooks以触发Jenkins;接着在Jenkins中创建作业并使用Docker插件模拟真实环境;通过Maven构建项目;最后部署至Tomcat。这套流程减少人为错误,提高开发效率,展示了技术的力量与流程的革新。
59 0
|
2月前
|
jenkins Java 持续交付
自动化魔法:用Jenkins打造Java项目的持续部署流水线
【8月更文挑战第13天】在软件开发中,自动化部署是提高效率与减少错误的关键。Jenkins作为一款强大的持续集成工具,支持Java项目的自动化构建、测试与部署。通过配置Jenkins及其丰富的插件生态(如Git和Maven插件),可实现从代码提交到上线的全自动化流程。此流程包括从GitHub自动拉取代码、使用Maven构建项目,并通过如`mvn clean install`命令执行构建,最后利用插件如“Publish Over SSH”将制品部署至远程服务器。此外,还可配置邮件通知等后处理动作确保发布的稳定可靠。借助Jenkins,开发者能显著加速软件交付周期,同时减少手动操作带来的风险。
68 0
|
3月前
|
测试技术 API Android开发
《手把手教你》系列基础篇(九十七)-java+ selenium自动化测试-框架设计篇-Selenium方法的二次封装和页面基类(详解教程)
【7月更文挑战第15天】这是关于自动化测试框架中Selenium API二次封装的教程总结。教程中介绍了如何设计一个支持不同浏览器测试的页面基类(BasePage),该基类包含了对Selenium方法的二次封装,如元素的输入、点击、清除等常用操作,以减少重复代码。此外,页面基类还提供了获取页面标题和URL的方法。
76 2
下一篇
无影云桌面