前言

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. 第二阶段:4.商业需求文档MRD:6.PRD-其他需求

  2. 20191024-3 互评Alpha阶段作品

    此作业要求参见https://edu.cnblogs.com/campus/nenu/2019fall/homework/9860 本组对构建之法组评价的博客链接:https://www.cnblog ...

  3. 自定义Django Admin界面

    目录 模型 注册模型 定制页面 模型 # app/model.py class Question(models.Model): question_text = models.CharField(max ...

  4. 量化投资学习笔记07——python知识补漏

    看<量化投资:以python为工具>这本书,第一部分是python的基础知识.这一部分略读了,只看我还不知道或不熟的. 定义复数 x = complex(2, 5) #2+5j 也可以直接 ...

  5. model流程

    @RequestMapping("toDetail.do") public ModelAndView toDetail(HttpServletRequest request,Htt ...

  6. 一条SQL注入引出的惊天大案2:无限战争

    前情回顾: 经过黑衣人和老周的合作,终于清除了入侵Linux帝国的网页病毒,并修复了漏洞.不曾想激怒了幕后的黑手,一场新的风雨即将来临. 详情参见:一条SQL注入引出的惊天大案   风云再起 小Q是L ...

  7. 【转载】解决KindEditor图片上传对话框位置异常问题(浏览器放大缩小时对话框不见了)

    今早在整理文件上传模块的时候,发现富文本编辑器 kindeditor 上传图片的对话框无法显示,其实对话框已经生成了,但是它没有top值,所以在页面上看不见. 捣鼓了一个多小时,代码看了一大串,没解决 ...

  8. mongo repository

    using MongoDB.Driver; namespace Dben.Invoice.Repository { /// <summary> /// 仓储基类 /// </summ ...

  9. SPFA判负环模板

    void DFS_SPFA(int u){   if(flag) return; vis[u]=true;   for(int i=head[u];i;i=edges[i].nxt){   if(fl ...

  10. 7月17日刷题记录 分治Getting!循环比赛日程表

    通过数:1 ┭┮﹏┭┮ qdoj.xyz 1053 分治-循环比赛日程表 其实今天晚上留给编程的时间并不多,做出一道... 不过收获还是非常大的 毕竟本人从来没有学习过分治算法,今天竟然攻克了我人生中 ...