Jenkins代码发布与回滚

一:Jenkins的简介

1.1 Jenkins概念:

Jenkins是一个功能强大的应用程序,允许持续集成和持续交付项目,无论用的是什么平台。这是一个免费的源代码,可以处理任何类型的构建或持续集成。集成Jenkins可以用于一些测试和部署技术。Jenkins是一种软件允许持续集成。

1.2 Jenkins目的:

1、持续、自动地构建/测试软件项目。

2、监控软件开放流程,快速问题定位及处理,提示开放效率。

1.3 特性:

开源的java语言开发持续集成工具,支持CI,CD。

易于安装部署配置:可通过yum安装,或下载war包以及通过docker容器等快速实现安装部署,可方便web界面配置管理。

消息通知及测试报告:集成RSS/E-mail通过RSS发布构建结果或当构建完成时通过e-mail通知,生成JUnit/TestNG测试报告。

分布式构建:支持Jenkins能够让多台计算机一起构建/测试。

文件识别:Jenkins能够跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等。

丰富的插件支持:支持扩展插件,你可以开发适合自己团队使用的工具,如git,svn,maven,docker等。

1.4 产品发布流程:

产品设计成型 -> 开发人员开发代码 -> 测试人员测试功能 -> 运维人员发布上线

持续集成 (Continuous integration,简称CI)

持续交付(Continuous delivery)

持续部署(continuous deployment)

二:代码上线流程图

三:Jenkins的安装部署

软件包:Jdk1.8u 、Tomcat7、Maven3.5.3、Git

3.1.1 部署Tomcat7

安装JDK1.8u

tar xf jdk-8u161-linux-x64.tar.gz

mv jdk1.8.0_161/ /usr/local/java

rm -rf  $(which java)

设置环境变量

vim /etc/profile.d/java.sh

export JAVA_HOME="/usr/local/java"

export JRE_HOME=/usr/local/java/jre

export PATH=$PATH:$JAVA_HOME/bin:/usr/local/tomcat7/bin

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH

source /etc/profile.d/java.sh

java -version

java version "1.8.0_161"

安装Tomcat

tar xf apache-tomcat-7.0.54.tar.gz

mv apache-tomcat-7.0.54 /usr/local/tomcat7

/usr/local/tomcat7/bin/startup.sh

3.1.2 部署Maven

tar xf apache-maven-3.5.3-bin.tar.gz

mv apache-maven-3.5.3 /usr/local/maven

vim /etc/profile.d/java.sh

MAVEN_HOME=/usr/local/maven

export MAVEN_HOME

export PATH=${PATH}:${MAVEN_HOME}/bin

source /etc/profile.d/java.sh

3.1.3 安装Git

yum -y install git

3.1.4 部署Jenkins

将从官网下载的war包移动到tomcat的网页目录下

mv jenkins.war /usr/local/tomcat7/webapps/

ls /usr/local/tomcat7/webapps/

docs  examples  host-manager  Jenkins jenkins.war  manager  ROOT

当Jenkins的war包放到tomcat的webapps目录下时将会自动解压生成一个jenkins的目录

编辑Tomcat的配置文件调整字符集

vim /usr/local/tomcat7/conf/server.xml

<Connector port="8080" protocol="HTTP/1.1"

connectionTimeout="20000"

redirectPort="8443" URIEncoding="UTF-8"/>

/usr/local/tomcat7/bin/shutdown.sh && /usr/local/tomcat7/bin/startup.sh

打开浏览器输入 http://192.168.200.101:8080/jenkins  访问

等待安装完成

注:如安装过程中出现失败的情况,暂时忽略。安装完成后更换插件源再次进行所需插件的安装。

安装部署完成。

四:Jenkins安装后的调整。

更新中。。。。。。。

原文地址:https://www.cnblogs.com/bingguoguo/p/9185596.html

时间: 2024-07-31 07:08:25

Jenkins代码发布与回滚的相关文章

jenkins服务器免密登录tomcat jenkins发布or回滚插件

安装maven91 gitlab-ctl start 92 /etc/init.d/jenkins start上传所需安装包查看自身jdk环境93 rpm -qa | grep jdk94 rpm -e java-1.8.0-openjdk-headless-1.8.0.102-4.b14.el7.x86_64 java-1.7.0-openjdk-headless-1.7.0.111-2.6.7.8.el7.x86_64 --nodeps #卸载自身jdk环境95 tar zxf jdk-8u

shell脚本实现git快速提交代码与快速回滚

shell脚本实现git快速提交代码与快速回滚 创建一个commit库: [[email protected] cml]# echo "check github" > index.html [[email protected] cml]# cat index.html check github [[email protected] cml]# git add index.html [[email protected] cml]# git commit -m "check

Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(四):发布与回滚

写在前面 我们以前windows跑.net Framework程序的时候,发布,自己乖乖的替换程序:备份,也是自己一个一个的重命名备份:回滚,发布遇到问题的回滚更是不用说了:运维很是怕我们 这些用windows的啊: 那全面拥抱linux的一一.net core 时代 ,是如何处理这些个问题的呢? 噔噔蹬蹬~请往下看. 运行环境 centos:7.2 cpu:1核 2G内存 1M带宽 Jenkins ver. 2.150.1 一台安装jenkins的机器. (本文例子不一定要安装jenkins,

k8s用kubectl管理应用升级,服务发布与回滚,扩缩容

应用升级 Kubectl set image --help 有案例指定新版本 [[email protected] ~]# kubectl set image deployment/nginx nginx=nginx:1.11 升级之后他会将所有版本进行替换,用describe来查看版本 [[email protected] ~]# kubectl get pods NAME                       READY     STATUS    RESTARTS   AGE bus

Jenkins实现html代码上线与回滚

一.案例环境二.部署Gitlab1)部署Gitlab2) 配置免密登录3)测试免密登录三.部署Jenkins四.Jenkins集成Gitlab五.部署Nginx六.Jenkins实现代码自动上线七.Jenkins实现代码自动部署与回退及重复构建 一.案例环境 系统 IP地址 主机名 所运行的服务 Centos 7 192.168.1.6 gitlab gitlab Centos 7 192.168.1.7 Jenkins jenkins Centos 7 192.168.1.8 Nginx ng

kubernetes 滚动更新发布及回滚

基本命令 记录历史 --record kubectl  apply -f **** --record 查看当前状态 kubectl rollout status deployment/demo -w 查看历史 kubectl rollout history deployment/demo 回滚到指定版本 kubectl rollout undo deployment/demo --to-revision=2 原文地址:https://www.cnblogs.com/zhangeamon/p/82

Ubuntu系统下使用Jenkins进行项目的自动构建还是项目回滚方法

上面虽然实现了项目的自动部署,但是有时部署失败的时候我们需要回滚到指定版本的构建,这样才能更灵活的进行项目的构建部署.我们可以选择"参数化的构建过程"进行传递不同的参数来选择是进行新的构建还是回滚 如果要在实现回滚,一定要在构建后将,构建完成的文件进行存档,方便以后回滚的时候使用. 如果要在实现回滚,一定要在构建后将,构建完成的文件进行存档,方便以后回滚的时候使用 构建后存档 使用参数化构建过程,让后面的脚步可以根据不同的变量执行不同的操作.添加"Choice"参数

持续集成开篇之(一)代码发布流程

最近在网上看了不少有关CI/CD的文章,其实基本是雷同的,且内容也不是非常完善.确实,当前持续集成用到的开源工具无非还是Git.Jenkins.Ansible(Fabric)这些,不同的应该是各公司的技术框架差异,发布审核流程不同,从而使配置细节也有较大不同.接下来我要分享的一系列文章均是围绕生产版本发布.集群中间件搭建以及监控来写,并且都是这些年(2014-至今)我们一直还在用的技术(包括具体环境搭建以及前后端发布等细节),欢迎拍砖,共同探讨. 我们一直沿用的一套流程如下: 0.在公司内部搭建

Walle代码发布练习

一.概述 Walle 一个web部署系统工具,配置简单.功能完善.界面流畅.开箱即用!支持git.svn版本管理,支持各种web代码发布,PHP,Python,JAVA等代码的发布.回滚,可以通过web来一键完成. 功能列表:用户分身份注册.登录开发者发起上线任务申请.部署管理者审核上线任务支持多项目部署支持多项目多任务并行快速回滚项目的用户权限管理部署前准备任务pre-deploy(前置检查)代码检出后处理任务post-deploy(如vendor)同步后更新软链前置任务pre-release