centos安装Jenkins并拉取git远程仓库的代码进行自动化构建部署

本文主要是介绍centos安装Jenkins并拉取git远程仓库的代码进行自动化构建部署,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

安装Jenkins并拉取git远程仓库的代码进行自动化构建部署

  • 1 前置条件
  • 2 先安装jdk11
  • 3 安装git
  • 4 安装maven
  • 5 安装jenkins
    • 5.1下载jenkins
    • 5.2启动jenkins
  • 6 使用jenkins拉取git仓库代码并部署
    • 6.1 安装插件
    • 6.2 在jenkins中配置maven
    • 6.3在jenkins上构建maven项目
    • 6.4 配置拉取的git仓库
    • 6.5构建项目

在这里插入图片描述

1 前置条件

在linux上安装jenkins的前提条件是已经安装了jdk、maven、git

2 先安装jdk11

这里是在centos上直接安装openjdk11

yum search java|grep jdk

在这里插入图片描述
yum install java-11-openjdk-devel
在这里插入图片描述

3 安装git

yum -y install git  

安装好后,看下版本

git --version

4 安装maven

首先下载maven安装文件,此处我选择的版本是3.6.3,下载地址,
下载后上传到服务器目录/usr/local目录下

tar -xvzf apache-maven-3.6.3-bin.tar.gz

修改目录名称为maven3,所以服务器中maven的路径为/usr/local/maven3后面需要在jenkins中配置maven路径

mv apache-maven-3.6.3 maven3

防止后续maven下载慢,可以添加阿里云的镜像到maven的setting.xml配置中,

<mirror><id>nexus-aliyun</id><mirrorOf>central</mirrorOf><name>Nexus aliyun</name><url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>

5 安装jenkins

5.1下载jenkins

下载地址:https://jenkins.io/download/
点击 Generic Java package (.war) 下载就行了
在这里插入图片描述

5.2启动jenkins

将下载的war包上传的服务器中
在这里插入图片描述
因为jenkins是java项目,可以直接使用java命令启动

java -jar jenkins.war

启动后,控制台会生成一个管理员初始密码,先记下来
在这里插入图片描述
然后输入网址http://192.168.0.1:8080/, 换成自己的ip和端口就行
在这里插入图片描述
这里的管理员密码就是上一张图的初始密码,之后设置管理员账号密码

6 使用jenkins拉取git仓库代码并部署

6.1 安装插件

在jenkins创建item之前,需要安装一个maven插件用于构建maven项目
在这里插入图片描述

6.2 在jenkins中配置maven

在这里插入图片描述

6.3在jenkins上构建maven项目

利用maven插件构建maven项目,名称为demo
在这里插入图片描述
然后主页就会有一个demo项目
在这里插入图片描述

6.4 配置拉取的git仓库

然后点击demo项目进行配置git仓库
在这里插入图片描述

6.5构建项目

配置完成后,去主页点击构建
在这里插入图片描述

在这里插入图片描述
之后查看控制台输出,可以看到已经打包好的demo.jar,路径为

/root/.jenkins/workspace/demo/target/

然后配置构建完成之后需要执行的命令,如下图
在这里插入图片描述
该命令的作用是将jar包复制到指定目录下,然后启动jar包,可自行修改

#!/bin/bash
str=`ps -ef | grep demo.jar | grep -v "grep"|awk '{print $2}'`
kill -9 $str
rm -rf /usr/project/demo/*
cp /root/.jenkins/workspace/demo/target/* /usr/project/demo/
cd /usr/project/demo/
nowDate=`date +"%Y-%m-%d"`
BUILD_ID= java -jar demo.jar --server.port=8081 > nohup.log 2&>demo-$nowDate.log &

这样就初步完成了jenkins拉取git仓库,并进行自动化构建部署

这篇关于centos安装Jenkins并拉取git远程仓库的代码进行自动化构建部署的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/525900

相关文章

C#实现千万数据秒级导入的代码

《C#实现千万数据秒级导入的代码》在实际开发中excel导入很常见,现代社会中很容易遇到大数据处理业务,所以本文我就给大家分享一下千万数据秒级导入怎么实现,文中有详细的代码示例供大家参考,需要的朋友可... 目录前言一、数据存储二、处理逻辑优化前代码处理逻辑优化后的代码总结前言在实际开发中excel导入很

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

SpringBoot+RustFS 实现文件切片极速上传的实例代码

《SpringBoot+RustFS实现文件切片极速上传的实例代码》本文介绍利用SpringBoot和RustFS构建高性能文件切片上传系统,实现大文件秒传、断点续传和分片上传等功能,具有一定的参考... 目录一、为什么选择 RustFS + SpringBoot?二、环境准备与部署2.1 安装 RustF

Nginx部署HTTP/3的实现步骤

《Nginx部署HTTP/3的实现步骤》本文介绍了在Nginx中部署HTTP/3的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前提条件第一步:安装必要的依赖库第二步:获取并构建 BoringSSL第三步:获取 Nginx

Python实现Excel批量样式修改器(附完整代码)

《Python实现Excel批量样式修改器(附完整代码)》这篇文章主要为大家详细介绍了如何使用Python实现一个Excel批量样式修改器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录前言功能特性核心功能界面特性系统要求安装说明使用指南基本操作流程高级功能技术实现核心技术栈关键函

Java实现远程执行Shell指令

《Java实现远程执行Shell指令》文章介绍使用JSch在SpringBoot项目中实现远程Shell操作,涵盖环境配置、依赖引入及工具类编写,详解分号和双与号执行多指令的区别... 目录软硬件环境说明编写执行Shell指令的工具类总结jsch(Java Secure Channel)是SSH2的一个纯J

使用Python实现Word文档的自动化对比方案

《使用Python实现Word文档的自动化对比方案》我们经常需要比较两个Word文档的版本差异,无论是合同修订、论文修改还是代码文档更新,人工比对不仅效率低下,还容易遗漏关键改动,下面通过一个实际案例... 目录引言一、使用python-docx库解析文档结构二、使用difflib进行差异比对三、高级对比方

Three.js构建一个 3D 商品展示空间完整实战项目

《Three.js构建一个3D商品展示空间完整实战项目》Three.js是一个强大的JavaScript库,专用于在Web浏览器中创建3D图形,:本文主要介绍Three.js构建一个3D商品展... 目录引言项目核心技术1. 项目架构与资源组织2. 多模型切换、交互热点绑定3. 移动端适配与帧率优化4. 可

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

Redis实现高效内存管理的示例代码

《Redis实现高效内存管理的示例代码》Redis内存管理是其核心功能之一,为了高效地利用内存,Redis采用了多种技术和策略,如优化的数据结构、内存分配策略、内存回收、数据压缩等,下面就来详细的介绍... 目录1. 内存分配策略jemalloc 的使用2. 数据压缩和编码ziplist示例代码3. 优化的