jenkins+maven+git+tomcat+salt自动构建
jenkins 安装步骤
环境: centos7,jdk1.8.0,jenkins2.165,maven3.5.2
一、 安装配置java环境
二、安装jenkins
sudo wget -O /etc/yum.repos.d/jenkins.repohttp://pkg.jenkins-ci.org/redhat-stable/jenkins.reposudo rpm --importhttps://jenkins-ci.org/redhat/jenkins-ci.org.keysudo yum install jenkins
第二种方法,使用war包部署
下载war包:https://mirrors.tuna.tsinghua.edu.cn/jenkins/war-stable/2.150.3/jenkins.war
将war包部署到tomcat下面,通过启动tomcat来运行jenkins。
这里我使用第一种方法
三、安装完成,启动服务
jenkins 26904 1 39 16:23 ? 00:00:18 /usr/bin/java -Dcom.sun.akuma.Daemon=daemonized -Djava.awt.headless=true -DJENKINS_HOME=/var/lib/jenkins -jar /usr/lib/jenkins/jenkins.war --logfile=/var/log/jenkins/jenkins.log --webroot=/var/cache/jenkins/war --daemon --httpPort=8080 --debug=5 --handlerCountMax=100 --handlerCountMaxIdle=20
四、登录jenkins
访问jenkinsip:8080 ,进入登录页面,安装插件,创建管理员用户
五、jenkins基础配置
jenkins+git+maven+tomcat搭建自动化部署项目环境
- 下载地址 https://maven.apache.org/download.cgi
# wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz
# tar zxvf apache-maven-3.5.2-bin.tar.gz
# mv apache-maven-3.5.2 /usr/local/
- 配置环境变量:
# vim /etc/profile
export MAVEN_HOME=/usr/local/apache-maven-3.5.2
export PATH=$MAVEN_HOME/bin:$PATH
# source /etc/profile
# mvn --version
2、配置jenkins服务器和git仓库的连通性
1, jenkins服务器安装git命令
- # yum install git -y
# git --version
git version 1.8.3.1
2, git最好是使用ssh协议,然后使用ssh密钥,这样免去每次都输密码的麻烦



.png)
将war项目部署到远程服务器
<role rolename="manager-status"/>
<role rolename="manager-jmx"/>
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<user username="tomcat" password="tomcatpass" roles="manager-gui,manager-script,manager-jmx,manager-status" />
</tomcat-users>
<Context antiResourceLocking="false" privileged="true" >
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|112.97.59.*|118.24.103.105" />
# 加上允许的ip 或者网段

2,全局安全配置->Access Control Authorization->项目矩阵授权策略:
备份恢复
jenkins自带一个备份恢复的插件:ThinBackup

配置之后 ,还可选择立即备份,或者恢复
Jenkins构建完成自动发送邮件配置

5.实例配置。 "系统管理"——"系统设置"


.png)
.png)

打开调试模式
结合salt构建项目
jenkins带有一个saltstack插件,可以通过salt-api执行salt命令和state文件。
官网文档:https://wiki.jenkins.io/pages/viewpage.action?pageId=105742376
external_auth:
pam:
salt: #用户名
- test.* #可以使用的salt模块
- pkg.*
- cmd.*
- state.*
- '@runner'
salt-test: #用户名
- .*
- '@runner'
rest_cherrypy: # CherryPy HTTP 配置
port: 8000
disable_ssl: True #不启用ssl
# ssl_crt: /etc/pki/tls/certs/localhost.crt
# ssl_key: /etc/pki/tls/certs/localhost.key
expire_responses: False

salt-master服务器上面
history_date:
file.append:
- name: /etc/profile
- text: HISTTIMEFORMAT='%F %T '
# /srv/salt/history.sls
可以在上面的配置里启用参数化构建。先把目标服务器设置成一个变量,这里的Target使用这个变量, 构建时指定服务器就可以


如果不使用参数化构建,Target直接填要发布的minion服务器id。
构建的时候勾选目标服务器就可以啦

构建成功,验证minion02上面/etc/profile 最后一行多了一句 HISTTIMEFORMAT='%F %T '
日志:

jenkins+maven+git+tomcat+salt自动构建的更多相关文章
- jenkins的 git多分支自动构建
一.先做好jenkins和gitlab的webhook自动构建 二.选择哪个分支(我这是test分支) 三.选择build Triggers 四.过滤test分支 五.保存即可
- jenkins maven git windows code 自动部署
本人刚刚接触 写的不好就对付看看吧 哈哈哈O(∩_∩)O哈哈~ 最近看见别人弄得自动部署 自己也是手痒痒 也想弄一个 所以就弄了一个 windows的 我用的是https的 在网上看了很多都是 s ...
- Jenkins+Maven+Git CI环境搭建手册
Jenkins+Maven+Git CI环境搭建手册 环境: OS:Linux version 2.6.32-220.23.2.ali878.el6.x86_64 (ads@kbuild) (gcc ...
- linux服务器中Jenkins集成git、Gradle持续构建Springboot项目
Jenkins是用java编写的开源持续集成工具,目前被国内外各公司广泛使用.本章教大家如何在linux服务器中使用Jenkins自动发布一个可作为linux服务发布的Springboot项目. 自动 ...
- Jenkins+maven+git+sonar 系统持续集成&代码单測管理
Jenkins+maven+git+sonar 系统持续集成&代码单測管理 Jenkins的安装 Jenkins是基于Java开发的一种持续集成工具,用于监控持续反复的工作.功能包含: 1.持 ...
- ant+svn+tomcat实现自动构建
前段时间用做了一个简单的web api服务,在调试的过程中感觉到手动发布实在是效率低而且容易出错,于是花点时间搞了一下ant+svn+tomcat的自动构建,效果不错,今天拿出来分享一下. 准备工作 ...
- Jenkins + Maven + Ansible + Tomcat 实现JAVA代码自动部署
自动部署过程: jenkins从svn拉取代码,调用maven去打war包,用ansible去解压war包,最后重启tomcat. 前情回顾:在前面的文章我的环境已经有Jenkins+ansible ...
- Git钩子设置自动构建Jenkins
打开Git仓库,找到对应的项目,点击“仓库设置”,左侧点击“管理Git钩子”,如下图所示: 因为是push之后触发自动构建的,选择“post-receive”进行编辑 #!/bin/bash #提取分 ...
- Jekins - Hello world,Jekins + Maven + Git + Tomcat 的简单应用
Java Web 工程 新建一个简单的 Java Web 工程,并提交至 GitHub,可参考 Eclipse 提交工程至 GitHub 下载 jekins.war 在 http://mirrors. ...
随机推荐
- 使用kubeadm 安装 kubernetes 1.12.0
目录 简介: 架构说明: 系统配置: 1.1 关闭防火墙 1.2 禁用SELinux 1.3 关闭系统Swap 1.4 安装docker 使用kubeadm部署Kubernetes: 2.1 安装ku ...
- 【系列教程1】Gradle入门系列一:简介
Gradle是一种构建工具,它抛弃了基于XML的构建脚本,取而代之的是采用一种基于Groovy的内部领域特定语言.近期,Gradle获得了极大的关注. 这篇文章是Gradle教程的第一篇,我们有两个目 ...
- js希尔排序
function shellSort (arr) { var len = arr.length; var increment = Math.floor(len/2); while(increment! ...
- MVC 之 初识(一)
创建一个mvc项目,在项目中会startup.cs文件,startup文件主要是将项目寻找一个宿主 过去,项目一般都是寄宿在iis上的,通过owin可以寄宿到不同的宿主. 可以关闭owin:<a ...
- 广告api
appnexus: report timezoom brightroll: report timezoom criteo: report1 report2 用fiddle抓包查看 Taboola: ...
- 如何判断一个单向链表是否为回文链表(Palindrome Linked List)
题目:给定一个单向链表,判断它是不是回文链表(即从前往后读和从后往前读是一样的).原题见下图,还要求了O(n)的时间复杂度O(1)的空间复杂度. 我的思考: 1,一看到这个题目,大脑马上想到的解决方案 ...
- [0413] FFTSHIFT的四种写法
FFTSHIFT的四种写法 前言 matlab说,"你读过书,--我便考你一考.fftshift的函数,怎样写的?"我想,讨饭一样的人,也配考我么?便回过脸去,不再理会.matla ...
- C#题目及答案(1)
1. 简述 private. protected. public. internal 修饰符的访问权限. 答 . private : 私有成员, 在类的内部才可以访问. protected : 保护成 ...
- 每日质量NPM包-classnames
一.classnames 现在到处都追求效率开发,所谓存在即合理,各种各样的开源包/项目火热,也是因为他们大大解决了之前复杂的逻辑.作为榜上前10的热门包:classnames.还真需要了解了解它才能 ...
- 【BZOJ】3139: [Hnoi2013]比赛
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=3139 可以发现,答案之和得分的序列有关,而且和序列中每个元素的顺序无关.考虑HASH所有的 ...