zxpnet网站 zxpnet网站
首页
前端
后端服务器
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

zxpnet

一个爱学习的java开发攻城狮
首页
前端
后端服务器
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • idea ide安装
  • ssh常用软件
  • typora安装与使用
  • sts安装
  • git使用
  • jenkins基础
    • 一、jenkins介绍
      • jenkins原理
      • jenkins拓扑图
      • 服务器列表
    • 二、jenkins部署与环境安装
      • 1、windows版安装
      • 2、centos版安装
      • A、yum方式安装
      • B、war方式安装
      • 3、jenkins插件安装
      • 修改Jenkins插件下载地址
    • 三、jenkins项目配置与管理
      • 插件
      • 配置环境
      • Jenkins用户权限管理
      • Jenkins凭证管理
      • Maven安装和配置
      • Tomcat安装和配置
      • Pipeline流水线项目构建
      • 参数化构建
  • 黑客攻防
  • Docker安装centos7服务器常用软件
  • 软件小技巧
  • notepad小技巧
  • nginx配置
  • 百度网盘不限流
  • win10常用软件安装
  • 内网穿透软件
  • 常用浏览器的安装与使用
  • 数据库设计软件
  • ftp服务器
  • windows中制作cmd脚本
  • 安装vscode
  • soft
shollin
2021-09-09
目录

jenkins基础

  • 一、jenkins介绍
    • jenkins原理
    • jenkins拓扑图
  • 二、jenkins部署与环境安装
    • 1、windows版安装
    • 2、centos版安装
    • 3、jenkins插件安装
  • 三、jenkins项目配置与管理
    • 插件
    • 配置环境
    • Jenkins用户权限管理
    • Jenkins凭证管理
    • Maven安装和配置
    • Tomcat安装和配置
    • Pipeline流水线项目构建
    • 参数化构建

# 一、jenkins介绍

# jenkins原理

与gitlab、maven、tomcat的集成

1 必须从gitlab(源码私服) 获取我要打包的源

​ 1.1下载指定分支最新源码(TEst)

​ 1.2 并在本地切换过去

2 运行 mvn clean install 构建打包

3 打包之后存储至指下位置

4 将对应的包 上传到我们的nexus 私服(deploy、用户和密码)

5 基于Tomcat进行动态部署上去。

# jenkins拓扑图

img

1)首先,开发人员每天进行代码提交,提交到Git仓库

2)然后,Jenkins作为持续集成工具,使用Git工具到Git仓库拉取代码到集成服务器,再配合JDK,

Maven等软件完成代码编译,代码测试与审查,测试,打包等工作,在这个过程中每一步出错,都重新再执行一次整个流程。

3)最后,Jenkins把生成的jar或war包分发到测试服务器或者生产服务器,测试人员或用户就可以访问应用。

# 服务器列表

虚拟机统一采用CentOS7。

名称 IP地址 安装的软件
代码托管服务器 192.168.66.161 Gitlab-12.4.2
持续集成服务器 192.168.56.160 Jenkins-2.190.3,JDK1.8,Maven3.6.2,Git, SonarQube
应用测试服务器 192.168.56.162 JDK1.8,Tomcat9

参考:【Jenkins】持续集成环境实战_努力充实,远方可期-CSDN博客 (opens new window)

# 二、jenkins部署与环境安装

参考: jenkins持续集成王者版 | 君哥的学习笔记 (it235.com) (opens new window)

安装jenkins环境: java8或者java11以上、 maven, jenkins安装推荐直接安装,docker形式可能会有些问题

官方文档:https://www.jenkins.io/zh/ window版下载 (opens new window)

# 配置ci用户组,创建jenkins用户,并且指定ci组
$ groupadd ci
$ useradd jenkins -g ci

# 创建存放jenkins工具的目录,并指定权限,因jenkins后期构建比较占用磁盘,此处建议先挂载磁盘
$ mkdir -p /data/software
$ chown -R jenkins:ci /data/software

# 切换jenkins用户,进入到software目录,并下载jenkins.war
$ su jenkins
$ cd /data/software/
# 如果下载较慢,建议采用迅雷下载,然后上传
$ wget http://mirrors.jenkins.io/war-stable/latest/jenkins.war
1
2
3
4
5
6
7
8
9
10
11
12
13

# 1、windows版安装

下载msi文件,直接进行安装就可以了,密码

  • 如果8080端口被占用,可以在Jenkins安装路径下的C:\Program Files\Jenkins\jenkins.xml文件中修改端口

  • jenkins的启动与重启,在服务里面操作, 或者 http://localhost:18081/restart

  • 目录: C:\Windows\System32\config\systemprofile\AppData\Local\Jenkins\.jenkins\updates, 将.jenkins\updates\default.json里面的updates.jenkins.io/download 更换为mirrors.tuna.tsinghua.edu.cn/jenkins 将www.google.com更换为www.baidu.com

# 2、centos版安装

# A、yum方式安装

wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

yum install epel-release # repository that provides 'daemonize'
yum install java-11-openjdk-devel #如果有安装jdk1.8,这一步可以不安装
yum install jenkins

vi /etc/init.d/jenkins  # 修改配置,添加java运行路径, 或者建立软连接
# ln -s /mnt/app/jdk1.8.0_202/bin/java /usr/lib/java #建立软连接

vi /etc/sysconfig/jenkins  #修改端口为18081,启动用户名为root,默认为jenkins

systemctl daemon-reload
systemctl start|stop|restart jenkins

http://192.168.56.160:18081/jenkins/
vi /var/lib/jenkins/secrets/initialAdminPassword
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

image-20210909114112953

如果你的/etc/init.d/jenkins文件无法启动Jenkins,编辑配置文件/etc/sysconfig/jenkins, 修改 HTTP_PORT=18081

参考:yum安装Jenkins 最简单最全的教程_苍云烟-CSDN博客_yum 安装jenkins (opens new window)

# B、war方式安装

a>下载 Jenkins (opens new window).

b> 打开终端进入到下载目录.

c> 运行命令 java -jar jenkins.war --httpPort=8080.

d> 打开浏览器进入链接 http://localhost:8080.

e> 按照说明完成安装.

推荐放在tomcat当中进行使用

# 3、jenkins插件安装

Jenkins本身不提供很多功能,我们可以通过使用插件来满足我们的使用。例如从Gitlab拉取代码,使用Maven构建项目等功能需要依靠插件完成。接下来演示如何下载插件。

# 修改Jenkins插件下载地址

Jenkins国外官方插件地址下载速度非常慢,所以可以修改为国内插件地址: Jenkins->Manage Jenkins->Manage Plugins,点击Available(可选插件)

这样做是为了把Jenkins官方的插件列表下载到本地,接着修改地址文件,替换为国内插件地址

将updates.jenkins.io/download 更换为mirrors.tuna.tsinghua.edu.cn/jenkins 将www.google.com更换为www.baidu.com

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

最后,Manage Plugins点击Advanced,把Update Site改为国内插件下载地址 https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json 提交后,在浏览器输入: http://localhost:18081/restart ,重启Jenkins。

# 三、jenkins项目配置与管理

image-20210909213922773

  • 升级站点url为: https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json 之后提交并立即获取,默认的是https://updates.jenkins.io/update-center.json

# 插件

1、ssh :

2、Deploy to container

3、Maven Integration

4、Maven Invoker

5、SonarQube Scanner

# 配置环境

maven 指定MAVEN_HOME的目录

jdk1.8: Oracle Account : 578521128@qq.com 密码:Zhouxp841220 2696671285@qq.com 密码:Oracle123

# Jenkins用户权限管理

Role-based Authorization Strategy 插件

# Jenkins凭证管理

Credentials Binding插件

# Maven安装和配置

Maven Integration插件

image-20210910174511856

指定部署到私服的仓库地址,仓库id, 在setting.xml里面配置server

	<!-- 发布稳定版 -->
	<server>
	  <id>nexusReleases</id>
	  <username>deployment</username>
	  <password>deployment.6139</password>
	</server>
	<!-- 发布快照版 -->
	<server>
	  <id>nexusSnapshots</id>
	  <username>deployment</username>
	  <password>deployment.6139</password>
	</server>	
1
2
3
4
5
6
7
8
9
10
11
12

# Tomcat安装和配置

Deploy to container插件

配置tomcat的 tomcat-user.xml

<tomcat-users>
    <role rolename="tomcat"/>
    <role rolename="manager-script"/>
    <role rolename="manager-gui"/>
    <role rolename="manager-jmx"/>
    <role rolename="manager-status"/>
    <role rolename="admin-gui"/>
    <role rolename="admin-script"/>
    <user username="tomcat" password="tomcat.123" roles="manager-gui,manager-script,,manager-jmx,manager-status,tomcat,admin-gui,admin-script"/>
</tomcat-users>
1
2
3
4
5
6
7
8
9
10

tomcat8以上的话,修改webapps/manager/META-INF/context.xml文件

注释掉配置或 allow 修改为 allow="^.*$"
 <!--
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
 -->
1
2
3
4
5

image-20210911111018182

# Pipeline流水线项目构建

Pipeline插件

# 参数化构建

image-20210910181401996

git使用
黑客攻防

← git使用 黑客攻防→

最近更新
01
国际象棋
09-15
02
成语
09-15
03
自然拼读
09-15
更多文章>
Theme by Vdoing | Copyright © 2019-2023 zxpnet | 粤ICP备14079330号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式