背景:

  公司的web平台使用JAVA写的,但是不是用Tomcat部署的,代码内部自带了Web服务器,所以只需要有JAVA环境,将代码打包上传,启动脚本就可以。

  项目是根据pom.xml打包成的是.zip的压缩包,之前打包时在windows Server上用IDEA来打包,现在转到Jenkins上,实现自动打包部署;起初打包,怎么都没法打成zip包,后来才发现pom.xml中的参数,需要在打包命令中选择好

一、jenkins 安装

1.1 必要环境JAVA环境,安装JDK

1.1.1下载JDK

  下载地址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

  下载版本:jdk-8u171-linux-x64.rpm

1.1.2安装JDK

rpm -ih jdk-8u171-linux-x64.rpm

1.1.3配置JAVA的家目录

]# vim /etc/profile.d/java.sh
  export JAVA_HOME=/usr/java/latest
  export PATH=$JAVA_HOME/bin:$PATH
]# source /etc/profile.d/java.sh 
]# echo $PATH

2.1 安装jenkins

有两种方法,一种直接用jenkins.war启动,一种用tomcat部署启动jenkins

2.2 直接启动Jenkins.war

2.2.1启动命令

java -jar /PAHT/TO/Jenkins.war

2.2.2访问地址

http://Jenkins_Server_IP:8080

2.3 使用tomcat部署启动jenkins

2.3.1 下载安装tomcat

  JDK安装的是8的版本,Tomcat最好也是用8的版本

  下载链接: http://mirrors.hust.edu.cn/apache/tomcat/tomcat-8/v8.0.52/bin/apache-tomcat-8.0.52.tar.gz

]# tar xf apache-tomcat-8.0..tar.gz -C /usr/local/
]# ln -sv /usr/local/apache-tomcat-8.0. /usr/local/tomcat ]# vim /etc/profile.d/tomcat.sh
  export CATALINA_BASE=/usr/local/tomcat
  export PATH=$CATALINA_BASE/bin:$PATH ]# source /etc/profile.d/tomcat.sh

2.3.2 启动tomcat

]# catalina.sh start  #启动
#使用/usr/local/tomcat/bin 内的脚本也可以启动停止

2.3.3 部署jenkins

  将jenkins.war 放置到 /usr/local/tomcat/webapps 目录中,tomcat将自动解压部署

  访问 http://Jenkins_server_ip:8080/jenkins/ 即可

3.1 使用Jenkins

]# cat /root/.jenkins/secrets/initialAdminPassword

  将密码复制,粘贴到表单内即可

3.2 自定义Jenkins

  选择 安装推荐的插件,如果没有网络,也可以自定义不安装插件,将下载好的jenkins插件导入到jenkins服务器里即可

  然后创建用户,密码,邮箱

  登录即可;

二、jenkins的使用

1.1 系统管理配置

1.1.1增加插件

  系统管理--->插件管理---->可选插件

  安装 Maven Integration plugin 插件,可选插件中的名字为 Maven Integration

  安装 Publish Over SSH 插件

1.1.2 Publish Over SSH的使用,在系统管理--->系统设置里

  Key:添加秘钥对的私钥

  点击增加

    Name 服务器名字

    Hostname IP地址

    Username 登录用户名

    Remote Directory 登录根目录

  填好后,Test Configuration测试连接,成功即可

2.1新建一个任务

  -->填写任务名

  -->选择构建一个Maven项目

  -->确定

2.2 General项

  项目名称: 根据实际填写

  项目描述:留空或根据实际填写

  GitLab Connection: 留空

  丢弃旧的构建:保持构建的最大个数:通常填5

  其余项都可以留空

2.3 源码管理

  SVN选择 subversion

2.3.1 Repository URL: 填写SVN的项目的地址

2.3.2 Credentials 选择SVN登录账号密码,没有可以选择添加按钮,添加

  填写用户名和密码即可

  确定添加

  其他的没有需求可以不改动;

SVN设置

2.3.3 构建触发器

  可以选择定时构建,定时检查代码有没有更新,如果更新了就构建;

  选择触发远程构建

    身份验证令牌 :即填写一点 口令

      访问 http://Jenkins_server_ip:8080/jenkins/job/Repo_Name/build?token=口令

      即可触发构建

2.3.4 构建环境 与 pre Steps

  根据项目构建需求选择

2.3.5 Build

  根据pom.xml项目配置文件构建

  Goals and options 构建时的选项,也根据项目需求 clean install 或者clean package

    一些pom.xml会引用其他XML文件来讲打包好的文件,做成ZIP的压缩包,可以根据pom.xml中的属性选项,增加 “-P  参数”  完成打包

  如果有项目内存空间优化的需求,可以使用高级按钮

 

2.3.6 构建后操作

  可以根据项目的需求,来项目后部署

  SSH部署方案

    增加构建后操作步骤---> send build artifacts over SSH

  SSH Server

    Name 是在 系统管理--->系统设置 里设置的;

  Transfers

    source files 要部署的源文件的相对路径

    Romve Prefix 要去掉的父目录路径

    Remote directory 部署到的目录

    Exec command 执行的命令,部署操作可以直接在这里执行

jenkins+maven+svn 自动化部署的更多相关文章

  1. Jenkins+maven+gitlab自动化部署之基础环境部署(一)

    从一个二线城市,来到上海,刚入职,老大就给任务,为了减少开发打包部署时间,需要搭建一套自动化部署环境.接到任务后,赶紧上网查找资料,以及了解jenkins作用等等,用了一周时间,了解了个大概,由于都是 ...

  2. Jenkins+maven+gitlab自动化部署之docker发布sprint boot项目(七)

    Jenkins发布docker应用与发布java应用配置基本一致,需要配置Dockerfile及构建的步骤,步骤如下: 1.jenkins主机构建应用为jar包 2.jenkins主机把生产的jar包 ...

  3. Jenkins+maven+SVN+Tomcat部署过程

    一.下载地址 应首先确认安装了JDK: Jenkins下载地址:http://mirrors.shu.edu.cn/jenkins/windows-stable/jenkins-2.107.3.zip ...

  4. Jenkins+maven+gitlab自动化部署之前端构建发布(六)

    前端项目构建,需要在jenkins主机部署node服务,网上有说介绍说安装对应的nodejs插件进行前端项目构建,我这里是直接调用系统npm命令,进行前端打包.具体node部署参考:Centos7部署 ...

  5. Jenkins+maven+gitlab自动化部署之构建Java应用(五)

    前面几篇文章介绍jenkins部署以及配置,接下来我们,就介绍下如何使用jenkins发布应用. 1)新建项目 jenkins首页,点击左上新建任务,出现下图,填写对应信息,然后点击确定: 2)项目参 ...

  6. Jenkins+maven+gitlab自动化部署之Jenkins系统管理配置(四)

    一.Jenkins全局工具配置 在jenkins首页依次进入系统管理>>全局工具配置: 1) jdk.git.maven配置 指定其在服务器中的目录位置 二.插件管理 1)依次点开系统管理 ...

  7. Jenkins+maven+gitlab自动化部署之Jenkins部署(三)

    本章开始正式搭建Jenkins: 公司现在使用的jenkins版本是2.150.3,但是本次实验安装的版本我们选择最新的 2.164.3(当然,当你阅读这篇文章时,此版本已经不是最新),jenkins ...

  8. Jenkins + maven + svn 自动部署项目

    1.安装Jenkins sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins. ...

  9. Jenkins+maven+gitlab自动化部署之gitLab搭建(二)

    Gitlab我们这里采用docker方式部署,详细请参考:Docker部署Gitlab11.10.4

随机推荐

  1. 第一个Three.js程序——加入相机

  2. CC10:访问单个节点的删除

    题目 实现一个算法,删除单向链表中间的某个结点,假定你只能访问该结点. 给定待删除的节点,请执行删除操作,若该节点为尾节点,返回false,否则返回true 解法 这道题并不难,主要是题目中这句话确定 ...

  3. [Leetcode]003. Longest Substring Without Repeating Characters

    https://leetcode.com/problems/longest-substring-without-repeating-characters/ public class Solution ...

  4. .Net Core 做请求监控NLog

    使用 NLog 给 Asp.Net Core 做请求监控 https://www.cnblogs.com/cheesebar/p/9078207.html 为了减少由于单个请求挂掉而拖垮整站的情况发生 ...

  5. HDU 2243 考研路茫茫——单词情结 求长度小于等于L的通路总数的方法

    http://acm.hdu.edu.cn/showproblem.php?pid=2243 这是一题AC自动机 + 矩阵快速幂的题目, 首先知道总答案应该是26^1 + 26^2 + 26^3 .. ...

  6. MongoDB 最初级步骤

    对库TEST下的LOG聚集集合中的inserttim字段加索引 步骤(注意:前四步步骤不能错,错了不行): 一,打开F:\mongodb\bin\mongo.exe,也可以用cmd命令指到这个exe执 ...

  7. 修改datatable列

    var dt = dh.GetPageTable("tabelename"); dt.Columns["TBLNO"].ColumnName = "业 ...

  8. 微信小程序中的target和currentTarget区别

    最近在学习微信小程序相关知识,其中提到了两个属性target和currentTarget,其中target是指向触发事件的元素(常见于事件委托中),而currentTarget是指向捕获事件的元素(即 ...

  9. Ubuntu 设置静态ip地址

    1. 找到文件并作如下修改: sudo vim /etc/network/interfaces 修改如下部分: auto eth0iface eth0 inet staticaddress 192.1 ...

  10. 桉树IAAS云架构(转载)

    您可在 IaaS 云中建立和管理混合多虚拟机集群环境,并将现有 vSphere™. ESX™.ESXi™.KVM 和 XEN 虚拟环境作为 AWS 兼容 Eucalyptus桉树混合云管理.现在 Eu ...