Jenkins 基础篇 - 基础设置
站点设置
刚搭建好 Jenkins 环境,你还需要做一些简单设置,让我们的 Jenkins 看起来是这么一回事,特别是你要用于生产环境的时候。首先就是域名配置,如果你为 Jenkins 服务分配了一个域名,通过 Nginx 反向代理的方式来访问 Jenkins 服务的话,当你访问 Jenkins 的【系统管理】界面时就会看到如下警告,提示反向代理设置有误,当前安装的下列组件已有警告发布:

我们需要去到【系统配置】里面做下设置,将 Jenkins URL 由之前默认的 IP 修改成域名:

还是在 Jenkins 的【系统管理】面板中,点击【配置显示哪些警告】,或者去到【全局安全配置】设置里面,找到【隐藏的安全警告】这个地方,在【安全警告...】里面将这些警告隐藏掉:

对于安全警告最好的做法是升级 Jenkins 版本,但是新版 Jenkins 界面管理差异较大,我们暂时就先将这些警告隐藏掉吧,玩透了 Jenkins 后面我们就可以使用新版的 Jenkins。
工具配置
我们利用 Jenkins 构建我们的项目时可能还需要一些其他工具,例如构建 Java 项目需要 JDK,Ant 管理的项目需要 Ant 工具,Maven 管理的项目需要 Maven 工具,Gradle 管理的项目需要 Gradle,nodeJs 项目需要 Node 和 Npm 等。我们要先将这些需要的工具下载离线安装包,解压到 Jenkins 可以访问的目录,特别强调下,不推荐采用系统全局安装我们需要的工具,否则某些项目需要不同的工具版本,那会搞得比较麻烦。采用离线安装包放在不同的目录,对于工具版本的切换非常方便。另外对于 Maven 或者 Gradle 项目,推荐使用 Maven Wrapper 或者 Gradle Wrapper,这样就可以让项目自己决定使用什么版本的工具。
Jenkins 默认运行环境是 OpenJDK,如果我们的项目构建需要用 OracleJDK,那我们就去 Oracle 官网下载具体的 JDK 版本。例如,我这里下载了一个 OracleJDK 1.8.0_241,把它放在了 /var/jenkins_home/software/jdk1.8.0_241 目录,还准备了一个 Maven,在 /var/jenkins_home/software/apache-maven-3.6.3 目录。
如果你不想自己去下载离线包安装,也不想在系统里面全局安装这些工具,还可以选择去到 Jenkins 的【系统管理】中的【全局工具配置】里面,这个界面可以设置需要的软件,目前支持配置安装 JDK、Git、Gradle、Ant、Maven 等工具。例如我这里配置了一个 JDK 的安装,点击【新增 JDK 】按钮,填写好 JDK 别名,选择好 JDK 版本,目前支持的 JDK 版本从 1.4 到 JDK 9 都有,我这里选最新的一个 JDK 8,使用 JDK 需要同意 Oracle 的许可协议,同意许可协议要求登录 Oracle 账号,目前在 Oracle 官网下载 JDK 也都是需要登录的,没有 Oracle 账号就去注册一个,有账号就直接登录,Jenkins 也集成了登录功能。
【全局工具配置】里面可以支持添加以下工具:

添加一个 JDK,选择 JDK 8:

登录 Oracle 账号,同意 JDK 的许可协议:

环境变量
通过【全局工具配置】添加的工具可以在 Jenkins 的任务里面直接使用,不用专门设置环境变量。如果是自己通过离线包解压的方式安装的工具,为了让 Jenkins 能够知道我们的工具在哪里,这就需要用到环境变量。还是在 Jenkins【系统配置】里面的【全局属性】下面,有个【环境变量】复选框,勾选上,增加环境变量键值对,例如我这里就设置了 JDK 和 Maven 的环境变量:

在进行 Maven 构建打包的时候就可以使用 $MAVEN_HOME/bin/mvn clean package 进行 Maven 打包,也可以用 export 命令临时调整环境变量:
[jenkins@asus-centos ~]$ export MAVEN_HOME=/var/jenkins_home/software/apache-maven-3.6.3
[jenkins@asus-centos ~]$ $MAVEN_HOME/bin/mvn -version
注意事项
在 Jenkins 上用到的工具可以是 【全局工具配置】或者自己离线安装然后配置环境变量,但是这两种方式请二选一,如果你既设置了【全局工具配置】又自己添加了环境变量,可能会产生奇怪问题。
我们的 Maven 和 Gradle 的设置访问一些私有制品仓库时需要配置账号密码,当在 Jenkins 节点上执行打包时 Jenkins 会在配置该节点的系统账号下的 .m2 或者 .gradle 目录去寻找,所以也需要将 Jenkins 主节点的 Maven settings.xml 或者 Gradle init.gradle 配置文件弄一份到其他节点的用户目录下的 .m2 或者 .gradle 目录中。
Jenkins 基础篇 - 基础设置的更多相关文章
- 2-STM32+W5500+GPRS物联网开发基础篇-基础篇学习的内容
https://www.cnblogs.com/yangfengwu/p/10936553.html 这次的基础篇为公开篇,将公开所有基础篇的资料和源码 现在说一下基础篇准备公开的内容:(大部分哈,要 ...
- Jenkins: 基础篇(环境配置)
自动化领域比较有影响力的开源框架jenkins,确实比较强大,易用.很多公司将其用来做持续即成CI(continuous integration).为了拓展和强化自己的软件设计生态系统,也将很久前使用 ...
- 从0到1用react+antd+redux搭建一个开箱即用的企业级管理后台系列(基础篇)
背景 最近因为要做一个新的管理后台项目,新公司大部分是用vue写的,技术栈这块也是想切到react上面来,所以,这次从0到1重新搭建一个react项目架子,需要考虑的东西的很多,包括目录结构.代码 ...
- Maven——基础篇
Maven--基础篇 Maven出现前的问题 一个项目就是一个工程,而工程内一般是通过package包来分模块,比较用户模块,订单模块等,如果项目过于庞大,通过包模块来划分就不太合适,而应该拆分为模块 ...
- C#多线程之基础篇3
在上一篇C#多线程之基础篇2中,我们主要讲述了确定线程的状态.线程优先级.前台线程和后台线程以及向线程传递参数的知识,在这一篇中我们将讲述如何使用C#的lock关键字锁定线程.使用Monitor锁定线 ...
- 2000条你应知的WPF小姿势 基础篇<15-21>
在正文开始之前需要介绍一个人:Sean Sexton. 来自明尼苏达双城的软件工程师,对C#和WPF有着极深的热情.最为出色的是他维护了两个博客:2,000Things You Should Know ...
- C#多线程之基础篇2
在上一篇C#多线程之基础篇1中,我们主要讲述了如何创建线程.中止线程.线程等待以及终止线程的相关知识,在本篇中我们继续讲述有关线程的一些知识. 五.确定线程的状态 在这一节中,我们将讲述如何查看一个线 ...
- 深入学习jQuery选择器系列第一篇——基础选择器和层级选择器
× 目录 [1]id选择器 [2]元素选择器 [3]类选择器[4]通配选择器[5]群组选择器[6]后代选择器[7]兄弟选择器 前面的话 选择器是jQuery的根基,在jQuery中,对事件处理.遍历D ...
- iOS系列 基础篇 03 探究应用生命周期
iOS系列 基础篇 03 探究应用生命周期 目录: 1. 非运行状态 - 应用启动场景 2. 点击Home键 - 应用退出场景 3. 挂起重新运行场景 4. 内存清除 - 应用终止场景 5. 结尾 本 ...
随机推荐
- MyBatis、Spring、SpringMVC 源码下载地址
MyBatis.Spring.SpringMVC 源码下载地址 github mybatis https://github.com/fengyu415/MyBatis-Learn.git spring ...
- C++中的间接宏函数
宏函数对于每个C++程序员都决不陌生,就算是初出茅庐的C++程序员也知道如何定义.使用宏函数. 但是当初学者看到类似于以下这种宏函数嵌套的时候,可能还是会比较嘀咕, #define CONVERT ...
- 推荐一份Web 工程师的前端书单
014年一月以来,自己接触web前端开发已经两年多了,记录一下自己前端学习路上看过的,以及道听途说的一些书,基本上按照由浅入深来介绍. JavaScript 入门 <JavaScript权威指南 ...
- Logtash 配置文件解析-转载
转载地址:https://dongbo0737.github.io/2017/06/13/logstash-config/ Logtash 配置文件解析 logstash 一个ELK架构中,专门用来进 ...
- Python数据分析入门(十四):数据分析中常用图
折线图: 折线图用于显示数据在一个连续的时间间隔或者时间跨度上的变化,它的特点是反映事物随时间或有序类别而变化的趋势.示例图如下: 折线图应用场景: 折线图适合X轴是一个连续递增或递减的,对于没有规律 ...
- pwnable.tw 3x17
3x17 文章主要是参考了https://xuanxuanblingbling.github.io/ctf/pwn/2019/09/06/317/ 首先我们检查一下开启的保护 运行一下,先让输入add ...
- 学习WEB前端是应该自学还是参加培训机构?
先说观点,我强烈建议每个人都要自学,不要参加培训班. 我干web前端工程师这个职位已经有6年多的时间,之前在蚂蚁金服做过2年,后来离开是因为加班实在熬不住才走的,像这些已经上市的互联网公司几乎没有不加 ...
- 为Github的README.md生成目录的小工具
1 概述 因为Github的README.md文件[TOC]不生效,因此封装了一个别人已封装好的JAR包供大家使用. 2 使用方法 用Java做的,只需要JDK11以上的环境: java -jar t ...
- Team Queue UVA - 540
Queues and Priority Queues are data structures which are known to most computer scientists. The Te ...
- Ubuntu 快速安装Gitlab-ce
1.下载并安装gitlab,下载地址: https://packages.gitlab.com/gitlab/gitlab-ce/ sudo dpkg -i gitlab-ce_12.0.3-ce.0 ...