Jenkins部署及使用(安装maven配置阿里云镜像、git工具)

简介: Jenkins部署及使用(安装maven配置阿里云镜像、git工具)

在这里插入图片描述

Jenkins

官网

Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

功能

Jenkins功能包括:
1、持续的软件版本发布/测试项目。
2、监控外部调用执行的工作。

启动

首先保证系统中已经安装了jdk,最好是jdk1.5以上。
第一种启动方法,切换到jenkins.war存放的目录,输入如下命令:
$ java -jar jenkins.war
如果需要修改端口可以使用如下命令:
$ java -jar jenkins.jar--httpPort=8081
然后在浏览器中(推荐用火狐)输入localhost:8081,localhost可以是本机的ip,也可以是计算机名。就可以打开jenkins。
第二种方法是用tomcat打开
解压tomcat到某个目录,如/usr/local,进入tomcat下的/bin目录,启动tomcat
将jenkins.war文件放入tomcat下的webapps目录下,启动tomcat时,会自动在webapps目录下建立jenkins目录,在地址栏上需要输入localhost:8080/jenkins。

环境准备

IP 版本 内存
192.168.1.40 CentOS Linux release 7.6.1810 (Core) 4G

安装JAVA环境

[root@localhost ~]# tar -zxf jdk-8u201-linux-x64.tar.gz 
[root@localhost ~]# mv jdk1.8.0_201/ /usr/local/java
[root@localhost ~]# vim /etc/profile
export JAVA_HOME=/usr/local/java
export JRE_HOME=/usr/local/java/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
[root@localhost ~]# rm -rf /usr/bin/java
[root@localhost ~]# source /etc/profile
[root@localhost ~]# java -version
java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)

安装Jenkins

[root@localhost ~]# cd /etc/yum.repos.d
[root@localhost yum.repos.d]# wget https://pkg.jenkins.io/redhat-stable/jenkins.repo
[root@localhost ~]# rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
[root@localhost ~]# yum install jenkins
[root@localhost ~]# systemctl start jenkins

报错解决

[root@localhost ~]# systemctl status jenkins.service
● jenkins.service - LSB: Jenkins Automation Server
   Loaded: loaded (/etc/rc.d/init.d/jenkins; bad; vendor preset: disabled)
   Active: failed (Result: exit-code) since 五 2020-11-27 14:34:54 CST; 6s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 22427 ExecStart=/etc/rc.d/init.d/jenkins start (code=exited, status=1/FAILURE)

11月 27 14:34:54 localhost.localdomain systemd[1]: Starting LSB: Jenkins Automation Server...
11月 27 14:34:54 localhost.localdomain runuser[22432]: pam_unix(runuser:session): session opened for user jenkins by (
11月 27 14:34:54 localhost.localdomain jenkins[22427]: Starting Jenkins bash: /usr/bin/java: 没有那个文件或目录
11月 27 14:34:54 localhost.localdomain runuser[22432]: pam_unix(runuser:session): session closed for user jenkins
11月 27 14:34:54 localhost.localdomain jenkins[22427]: [失败]
11月 27 14:34:54 localhost.localdomain systemd[1]: jenkins.service: control process exited, code=exited status=1
11月 27 14:34:54 localhost.localdomain systemd[1]: Failed to start LSB: Jenkins Automation Server.
11月 27 14:34:54 localhost.localdomain systemd[1]: Unit jenkins.service entered failed state.
11月 27 14:34:54 localhost.localdomain systemd[1]: jenkins.service failed.

方法一:修改配置jenkins文件
[root@localhost ~]# vi /etc/init.d/jenkins
     79 /usr/lib/jvm/jre-1.7.0/bin/java
     80 /usr/lib/jvm/java-11.0/bin/java
     81 /usr/lib/jvm/jre-11.0/bin/java
     82 /usr/lib/jvm/java-11-openjdk-amd64
     83 /usr/local/java/bin/java    
     84 /usr/bin/java

#83行 加入本机jdk的位置,注意:指定到 bin目录的java层 ,后执行以下命令使配置生效,并启动jenkins
systemctl daemon-reload
systemctl start jenkins  # 启动

方法二:建立软连接
ln -s /usr/local/java/bin/java /usr/bin/java

关闭防火墙、沙盒

systemctl stop firewalld
setsenforce 0

访问

http://192.168.1.40:8080
[root@localhost ~]# cat /var/lib/jenkins/secrets/initialAdminPassword
a988dc3f30584130ab60a5e241ec9995

在这里插入图片描述
在这里插入图片描述
等待插件安装
在这里插入图片描述

jenkins加速下载

安装加速神奇,Jenkins默认使用google来搜索插件的下载,而且插件也在国外网站,这里将updates目录中的default.json内的url换为百度(搜索引擎)和清华(下载插件地址),前提必须出现过以上界面才会有updates目录

cd /var/lib/jenkins/updates/
sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json
sed -i 's/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json

然后重启服务,并重新访问Jenkins的web界面

systemctl restart jenkins

安装完成后,创建管理用户
在这里插入图片描述
默认继续
在这里插入图片描述

配置jenkins全局工具

注: 尽量不自动安装
在这里插入图片描述
在这里插入图片描述

安装maven、git 、aliyun镜像

[root@localhost ~]# tar -zxf apache-maven-3.6.0-bin.tar.gz
[root@localhost ~]# mv apache-maven-3.6.0 /usr/local/maven
[root@localhost ~]# echo 'export PATH=$PATH:/usr/local/maven/bin' >> /etc/profile
[root@localhost ~]# source /etc/profile
[root@localhost ~]# mvn -v
Apache Maven 3.6.0 (97c98ec64a1fdfee7767ce5ffb20918da4f719f3; 2018-10-25T02:41:47+08:00)
Maven home: /usr/local/maven
Java version: 1.8.0_201, vendor: Oracle Corporation, runtime: /usr/local/java/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-957.el7.x86_64", arch: "amd64", family: "unix"
[root@localhost ~]# find / -type f -name settings.xml
/usr/local/maven/conf/settings.xml
[root@localhost ~]# vim /usr/local/maven/conf/settings.xml  #配置阿里云镜像
157     </mirror>
158      -->
159      <mirror>
160        <id>aliyun maven</id>
161        <name>aliyun</name>
162        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
163        <mirrorOf>central</mirrorOf>
164      </mirror>
165    </mirrors>
166 

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Jenkins的插件管理

安装好jenkins,什么也干不了,jenkins相当于一个平台,安装什么样的插件,实现什么样的功能,功能的实现依赖于插件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

插件的安装

一般不会卸载,插件不会占用过多的空间。
第一种安装方式
在这里插入图片描述
在这里插入图片描述
想要插件安装后生效,需要重启

查看插件是否安装

插件安装前后是不同的
在这里插入图片描述
第二种方式(网站)
在这里插入图片描述
搜索区分大小写
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
很多版本,直接点击,便保存在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

用户管理

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里可以修改密码。
新建用户usera
在这里插入图片描述
在这里插入图片描述
新建用户userb
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
点击安全矩阵,出现权限的管理
在这里插入图片描述
全局权限管理——查看
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如果把usera设置成administer,那么administer便是普通用户
Credentials凭证,如:jenkis拉去代码时,如果代码的仓库是私有的,需要验证,便称之为凭证
SCM 给代码打标签

查看项目权限管理——查看

在这里插入图片描述
针对于项目的权限管理,不是很好,缺点:权限的细分

权限的管理分为两部分:
1 用户的权限管理
2 项目的权限管理

基于角色的权限管理
下载插件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
出现下图的东西
在这里插入图片描述
创建任务
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
任务的首页
在这里插入图片描述
回到首页
在这里插入图片描述
执行
在这里插入图片描述
新建任务
在这里插入图片描述
在这里插入图片描述
新建任务
在这里插入图片描述
在这里插入图片描述
执行
在这里插入图片描述
在这里插入图片描述
创建角色
在这里插入图片描述
在这里插入图片描述
给予权限
在这里插入图片描述
在这里插入图片描述
分配角色
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
登录Usera用户
在这里插入图片描述
在这里插入图片描述
登录userb用户
在这里插入图片描述
添加项目的角色
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
给予项目的权限
在这里插入图片描述
在这里插入图片描述
分配角色
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
此时usera对web-A web-B有读、配置、构建的权限
Test是读的权限
在这里插入图片描述
登录usera
在这里插入图片描述
查看项目test-A
在这里插入图片描述
在这里插入图片描述
查看项目web-A
在这里插入图片描述
查看项目web-B
在这里插入图片描述
新建任务(admin用户)
在这里插入图片描述
在这里插入图片描述
源码管理
在这里插入图片描述
https://github.com/gjjcommon/game-of-life
构建触发器
类似crontab
H:避免任务执行失败
在这里插入图片描述
Pre steps build post steps 是一个整体
Build是核心
Post steps后的操作称为 构建后操作
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
运行game-of-life
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Started by user Admin 这一次构建是谁触发的
Jenkins里的执行指令,jenkins都会形成一个临时的脚本
在这里插入图片描述
Jenkins主目录/工作目录
在这里插入图片描述
在这里插入图片描述
所有都是项目的根目录
targert编译输出的结果
每个分支完成特定的功能 deploy负责部署 web 负责web显示 core负责核心代码
Build负责构建 test负责测试
在这里插入图片描述
配置邮件
在这里插入图片描述
在这里插入图片描述
点击advanced
在这里插入图片描述
在这里插入图片描述
邮件通知
在这里插入图片描述
在这里插入图片描述
配置
在这里插入图片描述
在这里插入图片描述
填写收件人的邮箱
在这里插入图片描述
发送的邮件是否需要构建日志作为附件发送过去(需要),点击advanced
在这里插入图片描述
Trigger——什么样的情况下给谁发
失败的情况下给谁发
在这里插入图片描述
Requestor触发本次操作的人
点击add trigger,编辑成功的情况下给谁发
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

相关文章
|
2月前
|
开发工具 git C++
【App Service】VS Code直接部署App Service时候遇见 “fatal: not a git repository (or any of the parent directories): .git”
通过VS Code发布Python App Service的时候,遇见了发布失败错误: The deployment failed with error: fatal: not a git repository (or any of the parent directories): .git . Please take a few minutes to help us improve the deployment experience
83 24
|
19天前
|
运维 jenkins Java
Jenkins 自动化局域网管控软件构建与部署流程
在企业局域网管理中,Jenkins 作为自动化工具,通过配置源码管理、构建及部署步骤,实现了高效、稳定的软件开发与部署流程,显著提升局域网管控软件的开发与运维效率。
37 5
|
2月前
|
Java 程序员 Linux
Maven的基本安装与使用
Maven的基本安装与使用
|
2月前
|
jenkins Java 持续交付
Jenkins打包,发布,部署
Jenkins打包,发布,部署
260 0
|
4月前
|
Java jenkins Shell
jenkins学习笔记之五:Maven、Ant、Gradl、Node构建工具集成
jenkins学习笔记之五:Maven、Ant、Gradl、Node构建工具集成
|
4月前
|
Kubernetes jenkins 持续交付
jenkins学习笔记之二十一:k8s部署jenkins及动态slave
jenkins学习笔记之二十一:k8s部署jenkins及动态slave
|
4月前
|
存储 Linux 开发工具
【Azure App Service】本地Git部署Python Flask应用上云(Azure App Service For Linux)关键错误
【Azure App Service】本地Git部署Python Flask应用上云(Azure App Service For Linux)关键错误
|
4月前
|
负载均衡 jenkins 应用服务中间件
大规模部署下的 Jenkins 高可用性与负载均衡
【8月更文第31天】随着软件开发流程的加速,持续集成/持续交付(CI/CD)工具的重要性日益凸显。Jenkins 作为最受欢迎的 CI/CD 平台之一,为企业提供了强大的自动化构建和部署功能。然而,在大规模部署场景下,单一的 Jenkins 实例可能无法满足高可用性和性能的需求。本文将探讨如何设计和实施 Jenkins 高可用集群,以支持大型组织的需求,并通过负载均衡技术来提高系统的稳定性和响应速度。
333 0
|
4月前
|
jenkins Java 关系型数据库
jenkins学习笔记之十二:sonarqube9.9、SonarScanner4.8部署
jenkins学习笔记之十二:sonarqube9.9、SonarScanner4.8部署
|
4月前
|
开发工具 git
【Azure 应用服务】App Service 开启了私有终结点(Private Endpoint)模式后,如何来实现公网Git部署呢?
【Azure 应用服务】App Service 开启了私有终结点(Private Endpoint)模式后,如何来实现公网Git部署呢?
下一篇
DataWorks