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. ...
随机推荐
- Firemonkey的几个特色属性(一)
基于FireMonkey的程序开发与VCL确实有些不同,很多属性发生了变化,尤其是外观方面. 1.Margins.Padding.Position Margins:指定了当前控件在父控件(Parent ...
- python 之 循环语句
python提供了for循环和while循环以及嵌套循环(在python中没有do..while循环) while 循环语法: while 判断条件: 执行语句...... 实际案例: numbers ...
- 数据库03_SQL语句
由于在笔试中遇到写sql语句的题目,犯了低级错误,这里学习并总结一下,遇到相关的继续更新... 数据定义 1.创建数据库 create database testdb; 2.创建空表 需要指明表明.字 ...
- 【Java】【问题】
[log4j:WARN No appenders could be found for logger 解决方案] [解决] 我们在使用Log4j的时候,总是出现: log4j:WARN No appe ...
- 【BZOJ】1085: [SCOI2005]骑士精神
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1085 $${if (cs+val-1>ans) return ;}$$ #inclu ...
- win10,python3.6,django2.0.3,项目基本命令
1.django-admin startproject project_name(创建项目) 2.python manage.py startapp appname(创建应用) 3.python ma ...
- 设计模式(四) Factory Pattern工厂模式
核心: 实例化对象,实现创建者和调用者的分离 简单工厂模式 工厂方法模式 抽象工厂模式 面对对象设计的基本原则: ocp(open closed principle) 开闭原则:一个软件的实体应当对拓 ...
- Java——文件及目录File操作
API file.listFiles(); //列出目录下所有文件及子目录fileList[i].isFile() //判断是否为文件 fileList[i].isDirectory() //判断是否 ...
- 前端调用接口报错看不到报错响应时 console.dir
console.dir() 可以看到很多.log看不到的属性和方法
- git push 使用
git push命令用于将本地分支的更新,推送到远程主机.它的格式与git pull命令相仿. $ git push <远程主机名> <本地分支名>:<远程分支名> ...