IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 从零开始,使用Jenkins构建发布Pipeline流水线项目 -> 正文阅读

[系统运维]从零开始,使用Jenkins构建发布Pipeline流水线项目


一、环境安装部署

1. 安装JDK

在这里插入图片描述

2. 配置环境变量

C:\Program Files\Java\jdk1.8.0_152\bin

在这里插入图片描述

3. 安装并且激活IDEA

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

在这里插入图片描述

-javaagent:D:\IntelliJ IDEA\IntelliJ IDEA 2019.3.1\bin\jetbrains-agent.jar

4. 构建web项目

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

5. 安装 tomcat 服务器

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

在这里插入图片描述

配置IDEA,使其能够识别tomcat

在这里插入图片描述

在这里插入图片描述

6. 安装 git,开启版本控制

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

在这里插入图片描述

7. Gitlab 仓库搭建

hostnamectl set-hostname gitlab && su

#安装依赖包
yum install -y policycoreutils openssh-server openssh-clients.x86_64 postfix

#启动ssh服务并且设置开机启动
systemctl start sshd && systemctl enable sshd

#设置postfix开机自启,并启动
systemctl start postfix && systemctl enable postfix

rpm -ivh gitlab-ce-12.4.2-ce.0.el6.x86_64.rpm

修改 gitlab 访问地址和端口,默认为80,我们改为82

vim /etc/gitlab/gitlab.rb

23 external_url 'http://192.168.8.20:82'			 	#访问地址设为本机IP地址
 1112 nginx['listen_port'] = 82						 	#监听端口改为82,前面的注释需要取消掉


gitlab-ctl reconfigure
gitlab-ctl restart

http://192.168.8.20:82 访问Gitlab

修改管理员root密码,修改密码后,登录即可

在这里插入图片描述

8. 添加组、创建用户、创建项目

在这里插入图片描述

创建用户
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

将用户添加到组中

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

以刚才创建的zhangsan用户登录 ,然后在用户组中创建新的项目

在这里插入图片描述

9. 测试源码上传到 Gitlab 仓库

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

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

二、Jenkins 安装

Jenkins需要依赖JDK,所以先安装JDK1.8 ,安装目录为:/usr/lib/jvm

hostnamectl set-hostname jenkins && su
yum install java-1.8.0-openjdk* -y
rpm -ivh jenkins-2.277.4-1.1.noarch.rpm
 
vim /etc/sysconfig/jenkins

29 JENKINS_USER="root"
56 JENKINS_PORT="8888"

systemctl start jenkins 

打开浏览器访问 http://192.168.8.19:8888

#获取Jenkins的密码
cat /var/lib/jenkins/secrets/initialAdminPassword

在这里插入图片描述

在这里插入图片描述

1. 修改插件地址

cd /var/lib/jenkins/updates
sed -i 's/http:\/\/updates.jenkins- ci.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
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

在这里插入图片描述

2. 安装项目所需插件

安装完以后需重启Jenkins

Chinese													  	#翻译
Role-based Authorization Strategy						    #管理Jenkins用户权限
Credentials Binding										   	#凭证插件
Git														 	#使用Git工具到Gitlab拉取项目源码
Deploy to container										  	#把项目部署到远程的Tomcat里面
Maven Integration										  	#构建Maven项目
Pipeline													#创建Pipeline项目

3. 添加凭证

在 Jenkins 服务器上安装 Git工具

yum install git -y  
git --version 

在这里插入图片描述

  • Username with password

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

  • SSH密钥类型

使用 root 用户生成公钥和私钥,在 /root/.ssh/目录保存了公钥和私钥

ssh-keygen -t rsa

在这里插入图片描述

把生成的公钥放在 Gitlab 中

在这里插入图片描述

在这里插入图片描述

在 Jenkins 中添加凭证,配置私钥
在这里插入图片描述

  • 创建一个项目,测试凭证是否可用

在这里插入图片描述
使用密钥对的形式构成成功
在这里插入图片描述

在这里插入图片描述

三、安装配置 Maven

1. Jenkins服务器安装maven

tar zxvf apache-maven-3.6.2-bin.tar.gz
mkdir -p /opt/maven
mv apache-maven-3.6.2/* /opt/maven

vim /etc/profile										#配置环境变量,末尾添加

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export MAVEN_HOME=/opt/maven
export PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin

source /etc/profile

在这里插入图片描述

在这里插入图片描述

2. 配置JDK和Maven

在这里插入图片描述

JDK1.8
/usr/lib/jvm/java-1.8.0-openjdk

在这里插入图片描述

maven3.6.2
/opt/maven

在这里插入图片描述

3. 添加 Jenkins 全局变量

在这里插入图片描述

JAVA_HOME         	/usr/lib/jvm/java-1.8.0-openjdk
M2_HOME           	/opt/maven
PATH+EXTRA      	$M2_HOME/bin

在这里插入图片描述

4. 修改 Maven 的配置文件

  • 把配置文件中的本地仓库改为:/root/repo/
mkdir /root/repo 							
vim /opt/maven/conf/settings.xml

 54   <localRepository>/root/repo</localRepository>			

在这里插入图片描述

  • 添加阿里云私服地址
<mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>        
    </mirror>

在这里插入图片描述

5. 测试Maven是否配置成功

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

可以看到项目打成 war 包了,代表 maven 环境配置成功

四、安装配置 Tomcat

1. 安装

yum install java-1.8.0-openjdk* -y 						
tar -xzf apache-tomcat-8.5.47.tar.gz 				
mkdir -p /opt/tomcat 									
mv /root/apache-tomcat-8.5.47/* /opt/tomcat 		
/opt/tomcat/bin/startup.sh 							

2. 配置Tomcat用户角色权限

vim /opt/tomcat/conf/tomcat-users.xml

<role rolename="tomcat"/>
  <role rolename="role1"/>
  <role rolename="manager-script"/>
  <role rolename="manager-gui"/>
  <role rolename="manager-status"/>
  <role rolename="admin-gui"/>
  <role rolename="admin-script"/>
  <user username="tomcat" password="tomcat" roles="manager-gui,manager-script,tomcat,admin-gui,admin-script"/>

在这里插入图片描述

为了能够刚才配置的用户登录到 Tomcat,还需要修改以下配置,默认不许允许远程访问,现在需要注释掉

#开启远程访问
vim /opt/tomcat/webapps/manager/META-INF/context.xml

<!--
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->

在这里插入图片描述

3. 重启Tomcat,访问测试

/opt/tomcat/bin/shutdown.sh 
/opt/tomcat/bin/startup.sh 

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

五、构建 Pipeline 流水线项目

Jenkins中自动构建项目的类型有很多,常用的有:
自由风格软件项目(FreeStyle Project)

Maven项目(Maven Project)

流水线项目(Pipeline Project)

Groovy Pipeline 支持两种语法:
Declarative(声明式)

Scripted Pipeline(脚本式)

Pipeline 也有两种创建方法:
直接在 Jenkins 的 Web UI 界面中输入脚本

通过创建一个 Jenkins?le 脚本文件放入项目源码库中

一般推荐在 Jenkins 中直接从源代码控制(SCM) 中直接载入 Jenkins?le Pipeline 这种方法

1. 创建流水线项目

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

pipeline {
    agent any

    stages {
        stage('pull code') {
            steps {
                echo 'Hello World'
            }
        }
    stage('build project') {
            steps {
                echo 'Hello World'
            }
        }
    stage('deploy item') {
            steps {
                echo 'Hello World'
            }
        }
    }
}

生成拉取代码
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

生成编译构建的代码

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

生成部署代码(添加tomcat的凭证)

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

在这里插入图片描述

在这里插入图片描述

构建成功
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2. Pipeline Script from SCM

由于在Jenkins的UI界面编写Pipeline代码不方便脚本维护,并且脚本容易丢失,所以可以把Pipeline脚本放在项目中(一起进行版本控制)

在项目根目录建立Jenkins?le文件,把脚本内容复制到该文件中

这里要注意的是观察代码是否变颜色,有概率不识别,导致构建失败~

在这里插入图片描述

然后对Jenkinsfile文件进行提交代码

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

到Gitlab仓库上查看是否提交成功

在这里插入图片描述

重新配置web_demo_pipeline项目

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

对IDEA上代码进行更改并重新提交
在这里插入图片描述

构建完成
在这里插入图片描述

访问 Tomcat 查看发布结果,下面是前后对比

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

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-02-14 21:36:59  更:2022-02-14 21:37:39 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 5:32:32-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码