Jenkins持续部署(微服务架构项目部署)

这篇具有很好参考价值的文章主要介绍了Jenkins持续部署(微服务架构项目部署)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、持续集成

1.什么是持续集成

2 持续交付

3 持续集成的作用

二、Jenkins介绍

三、Jenkins安装

1.安装Jenkins

2.配置jenkins  

​3.插件安装

四、任务构建

1.新建任务

​2.源码管理

​3.maven设置

4.远程设置

5.构建任务

6.构建启动脚本


一、持续集成

1.什么是持续集成

        持续集成要求每当有人提交代码时,就对整个应用进行构建,并对其执行全面的自动化测试集合。而且至关重要的是,假如构建或测试过程失败,研发团队就要停下手中的工作,立即修复它。持续集成的目标是让正在开发的软件一直处于可工作状态。  

持续集成的前提条件

  • 频繁提交

  • 创建全面的自动化测试套件(单元测试、组件测试和验收测试)

  • 保持较短的构建和测试过程

  • 管理开发工作区

持续集成必不可少的实践  

  • 构建失败之后不要提交新代码

  • 提交前在本地运行所有的提交测试,或者让持续集成服务器完成此事

  • 等提交测试通过后再继续工作

  • 回家之前,构建必须处于成功状态

  • 时刻准备着回滚到前一个版本

  • 在回滚之前要规定一个修复时间

  • 不要将失败的测试注释掉

  • 为自己导致的问题负责

  • 测试驱动的开发

2 持续交付

        持续交付让软件产品的产出过程在一个短周期内完成,以保证软件可以稳定、持续的保持在随时发布的状况。它的目标在于让软件的构建、测试与发布变得更快以及更频繁。这种方式可以减少软件开发的成本与时间,减少风险。

持续交付的原则  

  • 为软件的发布创建一个可重复且可靠的过程

  • 将几乎所有事情自动化

  • 把所有的东西都纳入版本控制

  • 提前并频繁地做让你感到痛苦的事

  • 内建质量(越早发现缺陷,修复成本越低)

  • 一个特性只有交到用户手中才能算「已完成」

  • 交付过程是每个成员的责任

  • 持续改进

3 持续集成的作用

        保证团队开发人员提交代码的质量,减轻了软件发布时的压力; 持续集成中的任何一个环节都是自动完成的,无需太多的人工干预,有利于减少重复 过程以节省时间、费用和工作量;  

Jenkins持续部署(微服务架构项目部署)

二、Jenkins介绍

 Jenkins持续部署(微服务架构项目部署)

        Jenkins是一个开源的、可扩展的持续集成、交付、部署(软件/代码的编译、打包、部署)的基于web界面的平台。允许持续集成和持续交付项目,无论用的是什么平台,可以处理任何类型的构建或持续集成。  

        官网:Jenkins

        官方文档:Jenkins User Documentation

三、Jenkins安装

1.安装Jenkins

下载jenkins  

docker pull jenkins/jenkins:lts-centos7 

 创建jenkins容器

docker run -d --name myjenkins -p 8888:8080 jenkins/jenkins:lts-centos7

2.配置jenkins  

        第一次使用jenkins需要做很多配置,将资源中的 default.json maven的安装包 jdk的安装包上传到linux服务器,配置时会使用到。  

1)镜像加速

jenkins官方镜像下载速度特别慢,需要配置国内镜像。

参考解决方法:

jenkins安装插件很慢,提速的解决方法,亲测有效_未兆的博客-CSDN博客

2)访问配置

 输入 http://192.168.12.128:8888 访问jenkins,提示需要解锁

Jenkins持续部署(微服务架构项目部署)

# 进入到容器
docker exec -it -u root myjenkins bash

# 查看密钥
cat /var/jenkins_home/secrets/initialAdminPassword

Jenkins持续部署(微服务架构项目部署)

复制密钥 到浏览器 并点击继续

jenkins的很多功能都需要插件来完成,我们先安装好推荐的插件

Jenkins持续部署(微服务架构项目部署)

等待插件安装:

如果镜像没配置成功这里会超级慢

Jenkins持续部署(微服务架构项目部署)3)新建用户

填写用户名密码后点击保存并完成

Jenkins持续部署(微服务架构项目部署)

弹出的实例IP没问题也是保存并完成,然后点击开始使用jenkins

Jenkins持续部署(微服务架构项目部署)

用户名pandie/123456

进入到jenkins欢迎页面

3.插件安装

1)安装Maven插件  

手动安装插件maven插件,如果缺少Maven IntegrationPlugin插件,在创建job时,不会有新建一个maven项目选项。

在Jenkins首页选择 Manage Jenkins -> Manage Plugins

Jenkins持续部署(微服务架构项目部署)

选择 可选插件,搜索 Maven Integration。直接安装即可。

Jenkins持续部署(微服务架构项目部署)2)安装 Publish Over SS

重复上述步骤,安装对应插件即可。  

Jenkins持续部署(微服务架构项目部署)

3)安装git插件

和上面一样 安装git插件  

Jenkins持续部署(微服务架构项目部署)

4)全局工具配置

将maven和jdk的压缩包拷贝到容器中

Jenkins持续部署(微服务架构项目部署)

# 将资源拷贝到容器
docker cp ./jdk-8u45-linux-x64.rpm myjenkins:/usr/local/
docker cp ./apache-maven-3.6.3-bin.tar.gz myjenkins:/usr/local/

# 进入容器 以root用户角色进入
docker exec -it -u root myjenkins bash

安装jdk

cd /usr/local
# 安装jdk 会被安装到这个目录: /usr/java/jdk1.8.0_221-amd64
rpm -ivh jdk-8u171-linux-x64.rpm

# 配置环境变量
vi /etc/profile

export JAVA_HOME=/usr/java/jdk1.8.0_221-amd64
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH

# 使配置生效
source /etc/profile

安装maven

cd /usr/local
# 解压maven
tar -zxvf apache-maven-3.6.3-bin.tar.gz

# 配置阿里云镜像 /usr/local/apache-maven-3.6.3/conf
vi /usr/local/apache-maven-3.6.3/conf/settings.xml


<!-- 阿里云仓库 -->
<mirror>
	<id>alimaven</id>
	<mirrorOf>central</mirrorOf>
	<name>aliyun maven</name>  		    <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>

Jenkins持续部署(微服务架构项目部署)

① 全局工具配置-jdk

点击 系统管理 --> 全局工具配置  

Jenkins持续部署(微服务架构项目部署)点击新增jdk

Jenkins持续部署(微服务架构项目部署)② 全局工具配置-maven

Jenkins持续部署(微服务架构项目部署)③ 远端服务器配置

当自动构建完成之后,会将打包好的工程,经由网络传输到其他服务器,但是需要配置  

Jenkins持续部署(微服务架构项目部署)Jenkins持续部署(微服务架构项目部署)

四、任务构建

1.新建任务

 在Jenkins首页创建 新任务

Jenkins持续部署(微服务架构项目部署)在创建任务页面,输入任务名称,同时选择构建maven项目

2.源码管理

选择 源码管理 -> Git。设置当前Gitlab仓库地址和认证信息  

Jenkins持续部署(微服务架构项目部署)

对于认证信息,点击添加。在页面中,类型:Username with password。用户名:git用户名 。密码:git密码。点击添加即可。

注意:如果当前是公共仓库,不需要设置认证信息。如果是私有仓库,则需要。

3.maven设置

选择Build选项  

Jenkins持续部署(微服务架构项目部署)

输入maven指令。用于清除、打包,最后点击“保存”按钮

然后 应用 保存!

4.远程设置

jenkins会自动的将打包好的jar包,推送到其他服务器。

Jenkins持续部署(微服务架构项目部署)Jenkins持续部署(微服务架构项目部署)

5.构建任务

返回首页,在列表中找到我们刚才创建的任务  

Jenkins持续部署(微服务架构项目部署)点击右边的绿色箭头按钮,即可执行此任务。

Jenkins持续部署(微服务架构项目部署)点击后,在首页左下角会显示构建的进度条。

Jenkins持续部署(微服务架构项目部署)

点击进度条,则可以进入到构建详情页面中。直至构建成功。  

Jenkins持续部署(微服务架构项目部署)当构建成功,其会把war包生成,放入服务器jenkins目录中。

Jenkins持续部署(微服务架构项目部署)

6.构建启动脚本

创建启动脚本文件app.sh  

#!/bin/sh
APP_NAME=/root/tanhua/tanhua-server/tanhua-server.jar
pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}' `
if [ -n "$pid" ]
then
   kill -9 $pid
fi
BUILD_ID=DONTKILLME
/usr/local/jdk1.8.0_201/bin/java -jar  -Xmx256m -Xms128m  $APP_NAME > /dev/null 2>&1 &

设置权限

chmod u+x app.sh

clean package -pl xc-model-basic/xc-basic-service -am -DskipTests文章来源地址https://www.toymoban.com/news/detail-467424.html

到了这里,关于Jenkins持续部署(微服务架构项目部署)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Jenkins+Docker+SpringCloud微服务持续集成之集群部署

      idea中修改注册中心eureka的配置,单节点换成集群   在启动微服务的时候,加入参数: spring.profiles.active 来读取对应的配置 网关服务配置   权限管理配置   业务模块配置       该插件可以支持多选框         逗号必须得是英文,否则出错       循环测试代码检查      

    2024年02月07日
    浏览(48)
  • linux jenkins 2.89.1 安装部署 持续构建svn下maven项目并部署到tomcat

    从这边博文可以学习到:  jenkins的安装 修改主目录 初始化 新建任务,构建第一个maven项目 将构建完成的项目部署到tomcat Jenkins的安装相当简单,只需要从官网下载war包,放入tomcat,运行tomcat就可以访问Jenkins了 准备工作:安装java环境,一个tomcat7+。如果构建maven项目还需要安

    2024年02月20日
    浏览(42)
  • Jenkins+Docker+SpringCloud微服务持续集成项目优化和微服务集群

    基于 Jenkins+Docker+SpringCloud微服务持续集成 作优化 上面部署方案存在的问题: 一次只能选择一个微服务部署 只有一台生产者部署服务器 每个微服务只有一个实例,容错率低 优化方案: 在一个Jenkins工程中可以选择多个微服务同时发布 在一个Jenkins工程中可以选择多台生产服务

    2024年02月13日
    浏览(43)
  • Jenkins持续集成之修改jenkins工作目录

    一般不建议把工作目录放到默认的C盘,故可以更改到其他盘中 前置条件:先在其他盘中新建工作目录的文件;如下图 1、首先打开任务管理器,找到服务中的Jenkins进程  2、右击点击转到详细信息; 3、再右击Jenkins打开文件所在路径;找到Jenkins.xml文件并打开 4、找到如下信息

    2024年02月04日
    浏览(40)
  • k8s的jenkins部署java项目到k8s集群cicd持续集成

    k8s1.16.0-k8s的jenkins部署java项目到k8s集群cicd(ci成,cd手动部署的) 注意: 本文档只是实现了ci,cd是通过ci生成的镜像,再手工再k8s-master执行的部署(只因pod部署的jenkins连接k8s的认证不知怎么操作,若jenkins是单独部署在k8s-master机器上,能直接在master执行kubectl命令就没这个问题了

    2024年02月03日
    浏览(60)
  • jenkins 参数化构建过程,jenkins下拉框选择要部署项目,jenkins部署java微服务项目,jenkins部署微服务

     1. jenkins部署demo 优化 点: 选择丢弃旧的构建,最大个数可以选择3或者5个,如果微服务,十个jar,占用很多空间,多来几次部署,硬盘满了 2. 选择 参数构建 ,需要部署哪个项目 名称可以设置为你的项目名,例:test_project 选项 例:           test_user           test

    2024年01月24日
    浏览(50)
  • 史上最全从0到1搭建最新版本jenkins可持续集成,整合git和maven部署微服务自动构建发版,抓紧收藏起来吧!

    好文推荐: netty搭建websocket集群(高性能.,高并发) springboot 实现延时队列(超级实用) 2.5万字讲解DDD领域驱动设计(史上最全DDD) 传统的软件开发在系统上线的时候需要手动进行,这个过程可能相对繁琐和容易出错,发布过程如下: 代码构建:开发人员在本地环境中编写

    2024年04月13日
    浏览(44)
  • 【Jenkins】持续集成部署学习

    Gitlab用的端口是80,可能会跟其它应用冲突,并且Gitlab所需内存也很大,所以还是单独放在一个服务器上比较好。 用原来空的虚拟机服务器克隆一个,注意内存要选大一点,6G左右 (1)ip a / ip addr / ifconfig 不显示ip问题 (1)查看系统的内核版本 执行命令:uname -r 注意:x86

    2024年02月11日
    浏览(36)
  • 云服务器使用jenkins+docker自动化部署SpringBoot项目

    docker 安装jenkins,就这一步都恶心死了 //拉取镜像,踩了很多坑,用其它版本的镜像插件一直安装失败,最后用的是lts版本(基础版) 用其它版本要么是连不上插件的下载地址,要么是插件下载不成功  docker pull jenkins/jenkins:lts  部署 docker run --user root -d -p 10240:8080 -p 10241:50

    2024年02月01日
    浏览(52)
  • 内网搭建Jenkins自动化远程部署项目到Windows服务器

    War Jenkins Packages 不赘述 一个小诀窍;去有外网的PC上面,部署Jenkins正常搜索插件安装,然后找到安装目录,有个.Jenkins的文件夹,里面有个plug的文件夹,这个就是我们所需所有插件,然后把它拷贝到内网中。  捷径(Jenkins2.346.1版本所需插件):https://download.csdn.net/download/b

    2024年02月17日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包