前言

jenkins是devops与CI/CD的重要工具之一,下面通过jenkins与svn的结合完成自动部署功能

环境

软件 名称 版本
操作系统 Centos 7.4
开发环境 jdk 1.8
中间件 tomcat 8.5
构建仓库 maven 3.5
版本控制 subversion 1.7
持续交付 jenkins 2.7

部署

准备工作

关闭防火墙与selinux,设备需要联网,因为maven构建的时候需要下载大量的jar包

systemctl stop firewalld.service
systemctl disable firewalld.service
sed -i 's/enforcing/disabled/g' /etc/sysconfig/selinux
reboot

安装jdk

rpm -qa | grep "java" | xargs rpm -e -nodeps
rpm -qa | grep "tzdata" | xargs rpm -e --nodeps
rpm -ivh jdk-8u45-linux-x64.rpm
java -version
java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)

安装tomcat

tar -zxf apache-tomcat-8.5..tar.gz -C /usr/local/
cd /usr/local
mv apache-tomcat-8.5. tomcat

安装maven工具

wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.3.9/binaries/ apache-maven-3.5.2-bin.tar.gz
tar -zxf apache-maven-3.5.-bin.tar.gz -C /usr/
cd /usr
mv apache-maven-3.5. maven

安装jenkins

wget http://mirrors.tuna.tsinghua.edu.cn/jenkins/war-stable/2.73.2/jenkins.war
rm -rf /usr/local/tomcat/webapps/ROOT
mkdir -p /usr/local/tomcat/webapps/ROOT
mv jenkins.war /usr/local/tomcat/webapps/ROOT
cd /usr/local/tomcat/webapps/ROOT
jar -xf jenkins.war
mkdir /jenkins
cd /usr/local/tomcat/bin
./startup.sh

添加环境变量

vim /etc/profile
# 添加如下内容:
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
MAVEN_HOME=/usr/maven
JENKINS_HOME=/jenkins
PATH=/usr/maven/bin:/usr/java/jdk1..0_45/bin:/usr/java/jdk1..0_45/jre/bin:$PATH
export PATH JENKINS_HOME MAVEN_HOME # 将环境变量加入到内存中
source /etc/profile
echo $PATH
/usr/maven/bin:/usr/java/jdk1..0_45/bin:/usr/java/jdk1..0_45/jre/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:

配置jenkins

登录jenkins

安装默认插件

安装相关插件

用同样的方法将subversion、maven的插件全部装上,因为我们等下要用这些插件来部署

构建任务

开始新建任务

自动化部署

验证结果

这样就表示自动打包完成,要看是否自动部署成功需要到被部署的tomcat服务器上面查看tomcat的状态;jenkins与git的结合也与之类似,可自行研究。

参考文档:

https://jenkins.io/zh/download/

https://jenkins.io/zh/doc/

Centos 7 最小化部署jenkins的更多相关文章

  1. Centos 7 最小化部署zabbix

    前言 文章内容是作者本人编写,之前一直放在word文档中,突然有闲情转移到博客上来了,欢迎后续观看者有问题找我探讨~~~ 废话不多说,先说下原理吧 概述 工作原理 通过c/s模式采集数据,基于b/s模 ...

  2. Centos 7 最小化部署svn版本控制(http协议)

    1.关闭selinux sh-4.2# sed -i 's/enforcing/disabled/' /etc/selinux/config sh-4.2# reboot 2.卸载防火墙 sh-4.2 ...

  3. Centos 7最小化部署apollo

    https://github.com/nobodyiam/apollo-build-scripts

  4. Centos 7 最小化部署svn版本控制(svn协议)

    1.关闭selinux sh-4.2# sed -i 's/enforcing/disabled/' /etc/selinux/config sh-4.2# reboot 2.卸载防火墙 sh-4.2 ...

  5. RHEL/CentOS 7最小化安装后需做的30件事情

    导读 CentOS是一个工业标准的Linux发行版,是红帽企业版 Linux 的衍生版本.你安装完后马上就可以使用,但是为了更好地使用你的系统,你需要进行一些升级.安装新的软件包.配置特定服务和应用程 ...

  6. Centos8最小化部署安装OpenStack Ussuri

    #!/bin/bash #Centos8最小化部署安装OpenStack Ussuri #共两台主机,分别是一台控制节点,一台计算节点 #.控制节点内存4096M.双网卡,分别为eth0:10.0.0 ...

  7. CentOS 7 最小化安装及优化

    CentOS 7 最小化安装及优化 目录 CentOS 7 最小化安装及优化 一.下载镜像文件 官方网站 国内镜像源 一.VMware 配置虚拟网络 二.VMware 新建虚拟机 三.CentOS 7 ...

  8. CentOS 7 最小化安装的网络配置

    默认的最小化安装CentOS 7系统以后,是没有ipconfig这个命令的,依赖于net-tools工具包. 一.nmtui 这是一个类似于图形化的命令(和setup类似) 通过这个组件窗口可以设置各 ...

  9. Centos程序最小化后,窗口标签都消失找不到窗口的问题

    我是用的centos版本是CentOs 7. 在“顶部面板”或者 “底部面板” 右击选择“添加组件”),如下图所示: 在搜索框里输入“窗口列表”(window list),选中“窗口列表”即可.如下图 ...

随机推荐

  1. 第二阶段:2.商业需求分析及BRD:4.产品需求分析总结

    产品的需求筛选 战略定位要考虑公司的战略问题.产品定位要分阶段,各个阶段的需求不同. 其实现在需求分析跟筛选都是非常快的. 不把需要当成需求,意思就是不要用户说需要什么就是什么,用户需要引导. 先分类 ...

  2. 驾驭git merge——git merge的规范化操作

    这两天负责将一个开发了较长时间,代码量数万行的C语言项目(A项目)的代码分支合并到主线.由于之前参与过一些其他项目分支收编时采用git merge引入问题的修改,个人从心理上对git merge有所抵 ...

  3. 深入CAS的底层实现机制,以及对应的使用风险

    概述 CAS(Compare-and-Swap),即比较并替换,是一种实现并发算法时常用到的技术,Java并发包中的很多类都使用了CAS技术.CAS也是现在面试经常问的问题,本文将深入的介绍CAS的原 ...

  4. $CF949D\ Curfew$ 二分/贪心

    正解:二分/贪心 解题报告: 传送门$QwQ$ 首先这里是二分还是蛮显然的?考虑二分那个最大值,然后先保证一个老师是合法的再看另一个老师那里是否合法就成$QwQ$. 发现不太会搞这个合不合法的所以咕了 ...

  5. 洛谷$P3620\ [APIO/CTSC 2007]$数据备份 贪心

    正解:贪心 解题报告: 传送门$QwQ$ $umm$感觉这种问题还蛮经典的,,,就选了某个就不能选另一个这样儿,就可以用堆模拟反悔操作 举个$eg$,如果提出了$a_i$,那就$a_{i-1}$和$a ...

  6. React Hooks 完全指南,读React作者博文感悟(2W字精华)

    阅读 facebook大佬:Dan Abramov 的文章颇有感悟 大佬 github地址 https://github.com/gaearon 重点总结 useEffect 是同步的 状态是捕获的当 ...

  7. realme X2谷歌套件

    目前市面上的很多手机是不支持谷歌相关组件的,经过不断的测试成功适配realme X2(真机测试完美适配) 为框架的GMS是用户想要体验整套Google服务不可绕开的一环,Google地图.Play商店 ...

  8. 我们为什么会删除不了集群的 Namespace?

    作者 | 声东  阿里云售后技术专家 导读:阿里云售后技术团队的同学,每天都在处理各式各样千奇百怪的线上问题.常见的有网络连接失败.服务器宕机.性能不达标及请求响应慢等.但如果要评选的话,什么问题看起 ...

  9. 最强常用开发库总结 - JSON库详解

    最强常用开发库总结 - JSON库详解 JSON应用非常广泛,对于Java常用的JSON库要完全掌握.@pdai JSON简介 JSON是什么 JSON 指的是 JavaScript 对象表示法(Ja ...

  10. 快到极致的Android模拟器——Genymotion

    转载声明:Ryan的博客文章欢迎您的转载,但在转载的同时,请注明文章的来源出处,不胜感激! :-)http://my.oschina.net/ryanhoo/blog/141824 还在用Androi ...