Centos 下 Jenkins2.6 + Git + Maven Shell一件部署与备份

非常感谢

http://blog.battcn.com/2017/07/21/jenkins-novice-config/


- 下载Jenkins2.6

官方网站:https://jenkins.io/

下载地址:https://jenkins.io/download/

# 指定端口为 18080 且 后台运行 jenkins 并且日志输出到 Jenkins.log中去
[root@localhost jenkins]# nohup java -Dhudson.util.Processtree.disable=true -jar jenkins.war --httpPort=18080 > jenkins.log &    

# 我禁用了 Centos7 自带的防火墙,安装的是 iptables
[root@localhost jenkins]# service iptables stop

# 查看启动日志
[root@localhost jenkins]# tail -n 30 jenkins.log
七月 21,2017 2:10:21 下午 jenkins.install.SetupWizard init
信息: 

*************************************************************
*************************************************************
*************************************************************

Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:

9fd9b9c8f50247b79b30674c83d6f560    #这一串就是我们的首次访问密码

This may also be found at: /root/.jenkins/secrets/initialAdminPassword

*************************************************************
*************************************************************
*************************************************************

七月 21,2017 2:11:02 下午 hudson.model.UpdateSite updateData
信息: Obtained the latest update center data file for UpdateSource default
七月 21,2017 2:11:03 下午 hudson.model.UpdateSite updateData
信息: Obtained the latest update center data file for UpdateSource default
七月 21,2017 2:11:03 下午 hudson.WebAppMain$3 run
信息: Jenkins is fully up and running
七月 21,2017 2:11:04 下午 hudson.model.DownloadService$Downloadable load
信息: Obtained the updated data file for hudson.tasks.Maven.MavenInstaller
七月 21,2017 2:11:20 下午 hudson.model.DownloadService$Downloadable load
信息: Obtained the updated data file for hudson.tools.JDKInstaller
七月 21,2017 2:11:20 下午 hudson.model.AsyncPeriodicWork$1 run
信息: Finished Download Metadata. 60,360 ms

我的主机IP:192.168.18.137

那么应该访问:http://192.168.18.137:18080

- 安全认证

- 插件安装

- 耐心等待

网络好的童鞋会灰常快,可惜我的网速贼渣,在这一步等了差不多有二十来分钟

- 创建用户

- 安装完成

到这一步说明我们Jenkins已经安装完成并且自带了部分插件(GIT,Email..),接下来 我们来配置JDK与Maven,以及Maven插件

- Maven插件安装

系统管理->管理插件->可选插件->安装完毕->重启Jenkins->刷新浏览器

下图为过滤插件且安装

- 全局配置(JDK/Maven)

Global Tool Configuration->配置JDK->配置Maven->点击Save

- 项目配置

首页->开始创建一个新项目->构建一个自由风格的软件项目/构建一个Maven项目(如果没安装Maven插件那就构建自由风格的,顶多就是通过构建完成后脚本多一句 mvn package)->构建一个Maven项目

- 配置GIT账号

- 配置指令与Shell

- Shell 脚本

[root@localhost battcn-workspace]# touch start-battcn.sh

[root@localhost battcn-workspace]# chmod 755 start-battcn.sh

#!/bin/sh
echo "====================================开始===================================="
#杀掉8080端口的进程
kill -9 `lsof -t -i:8080`    
#进入到存放jar目录
cd /usr/local/battcn-workspace    
#备份jar包(也可以先备份在杀进程)
cp -p /usr/local/battcn-workspace/battcn-swagger-1.0.0.jar ./backups/battcn-swagger-1.0.0-`date +%Y-%m-%d-%H:%M:%s`.jar    
#删除当前目录下的JAR
rm -rf battcn-swagger-1.0.0.jar    
#从Jenkins缓存目录拷贝
cp /root/.jenkins/workspace/battcn-swagger/target/battcn-swagger-1.0.0.jar .    
#查看备份是否成功
ls -al /usr/local/battcn-workspace/backups/battcn-swagger-1.0.0-*.jar    
#后台启动,且指定了开发环境和内存
nohup java -jar /usr/local/battcn-workspace/battcn-swagger-1.0.0.jar -xms512m -Xmx1024m  --spring.profiles.active=dev > /dev/null &    
echo "====================================结束===================================="

- 开始构建

- 查看日志

只要Jenkins告诉我们构建成功15:44:03 Finished: SUCCESS就OK

ps aux | grep battcn-swagger一下 代表我们项目已经成功构建了,且自动备份(第一次是不会备份,因为我们没有原始包,但是以后每次发布都会将)

[root@localhost battcn-workspace]# ps aux | grep battcn-swagger
root      16301  9.2 21.2 4060732 397036 pts/1  Sl   15:43   0:28 java -jar /usr/local/battcn-workspace/battcn-swagger-1.0.0.jar -xms512m -Xmx1024m --spring.profiles.active=dev
root      16395  0.0  0.0 114712   980 pts/1    S+   15:49   0:00 grep --color=auto battcn-swagger
[root@localhost battcn-workspace]# ll backups/
总用量 22052
-rw-r--r--. 1 root root 22580820 7月  21 15:43 battcn-swagger-1.0.0-2017-07-21-15:43:52.jar

- 结束

- 验证

访问:http://192.168.18.137:8080/swagger-ui.html

这应该算是完整图文并茂的傻瓜式教程了,如在搭建过程中遇到问题可以 加我QQ:1837307557或者在QQ群:391619659看到会在第一时间回复

- 不足

只写了单台机器,如跨机器只需要添加一个SSH插件即可,前面已经讲过怎么安装Maven插件

相关文章

Centos下搭建性能监控Spotlight
CentOS 6.3下Strongswan搭建IPSec VPN
在CentOS6.5上安装Skype与QQ
阿里云基于centos6.5主机VPN配置
CentOS 6.3下配置multipah
CentOS安装、配置APR和tomcat-native