jenkins + maven + SVN自动化集成部署

简要步骤

.安装JDK

.安装tomcat

.解压jenkins.war

.安装maven

.jenkins项目搭建(JAVA)

.jenkins远程部署


一:Java环境

1. 安装JDK

rpm -ivh jdk-8u101-linux-64.rpm

rpm -qa grep jdk(如有下信息,证明安装成功)

 

安装成功后,/usr/java/目录下会生成jdk1.8.0_101目录


3.配置JDK环境变量

vim /etc/profile (添加下面的信息)

JAVA_HOME=/usr/java/jdk1.8.0_101

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

PATH=$JAVA_HOME/bin:$PATH

export PATH JAVA_HOME CLASSPATH

退出编辑

source /etc/profile(使配置生效)

4.查看是否生效:java -version(附图)

 



二:tomcat安装

1.下载安装包放到/usr/local目录下

2.安装:tar -xvf apache-tomcat-7.0.70.tar.gz

3.启动服务:

cd /usr/local/apache-tomcat-7.0.70/bin

./startup.sh

4.验证tomcat安装是否成功

打开浏览器输入“tomcatIP8080”,10.0.1.82:8088tomcat配置文件修改过端口)

 

 

三:jenkins安装

1.jenkins.war包放至/usr/local/apache-tomcat-7.0.70/webapps目录下

2.设置环境变量(方法参照JAVA环境变量设置)

vim /etc/profile(在最后添加)

export JENKINS_HOME=/usr/local/apache-tomcat-7.0.70/webapps/jenkins

退出编辑

source /etc/profile(使配置生效)

3.验证jenkins安装是否成功

打开浏览器输入“tomcatIP8080/jenkins” 10.0.1.82:8088/jenkins

 



四:安装maven

1.下载apache-maven-3.3.9-bin.tar.gz。将下载后的文件拷贝到 /usr/local/目录下

2.解压:tar -zxvf apache-maven-3.3.9.-bin.tar.gz

解压后生成目录/usr/local/apache-maven-3.3.9

 

3.修改环境变量(参照JAVA环境变量)

/etc/profile 文件里添加

export M2_HOME=/usr/local/apache-maven

PATH=$PATH:$JAVA_HOME/bin:$M2_HOME/bin

 

4.检测是否安装成功:执行mvn -v命令

5.jenkins中配置JDKmaven路径

 

 

五:jenkins项目构建

 

1.jenkins主界面点击“新增”(构建一个maven项目)

 

2.源码地址(代码SVN路径和帐号密码)

输入SVN库的URL地址后,Jenkins会自动验证地址, (第一次录入时还需要录入svn仓库的用户名和口令 )

 

3.保存后就可以构建了(蓝色代表构建成功、红色代表构建失败)

构建失败的原因有很多:1.jenkins配置错误;2.代码问题等...

 

 

.将打好的包部署到远程目标服务器(有很多种方法,这里我选择了Jenkins自带的插件+shell

 

1.安装Deploy to container Plugin 插件(已安装过的略过这步)

进入:Jenkins主界面—系统管理—管理插件

输入:Deploy to container Plugin 进行查询,并安装



2.配置tomcat用户(在tomcat服务器上)

cd /usr/local/apache-tomcat-7.0.70/conf/

vim tomcat-users.xml

<tomcat-users>内添加下面框内的内容

username="Xiutest" password="Xiutest" 双引号里面的是账号和密码信息,可自定义

manager-gui:允许访问html接口(URL路径为/manager/html/*)
manager-script:允许访问纯文本接口(URL路径为/manager/text/*)
manager-jmx:允许访问JMX代理接口(URL路径为/manager/jmxproxy/*)
manager-status:允许访问Tomcat只读状态页面(URL路径为/manager/status/*)



3.工程节点配置(安装好插件后,才会有此选项)

Manager user name步骤二配置的tomcat账号信息

Manager password

Tomcat URLtomcat访问地址




4.配置远程执行shell的命令(shell脚本已经写好了,放在Jenkins服务器的/usr/local/apache-tomcat-7.0.70/webapps/jenkins/jenkins.sh

 



注:使用ssh命令要配置ssh服务(ssh服务我已经配置好了,后面使用只需要执行下面的操作)

1.cd /root/.sshJenkins上的ssh公钥和私钥放在/root/.ssh目录下)

2. scp id_rsa.pub root@10.0.0.33:/root(将公钥id_rsa.pub传到目标tomcat上的/root下)

3.cat /root/id_rsa.pub >> /root/.ssh/authorized_keys在目标tomcat服务器上将公钥追加公钥到授key

4.service sshd restart重启ssh服务

 



5.到此为止所有的配置(打包+远程部署)都完了,在Jenkins去构建吧(下面是Jenkins打印出来的构建成功的日志)

 



Scp 面密码操作
A
为本地主机(即用于控制其他主机的机器,jenkins服务器) ; 
B
为远程主机(即被控制的机器Serverjenkins运行之后发布项目的服务器), ip192.168.32.200 ; 
A
B的系统都是Linux
A上的命令:
1
、 ssh-keygen -t rsa (连续三次回车,即在本地生成了公钥和私钥,不设置密码)
2
、 ssh root@192.168.31.200 "mkdir .ssh;chmod 0700 .ssh" (需要输入密码, 注:必须将.ssh的权限设为700),如果提示.ssh已经存在,直接ssh root@192.168.31.200 "chmod 0700 .ssh" 
3
、 scp ~/.ssh/id_rsa.pub root@192.168.31.200:.ssh/id_rsa.pub (需要输入密码) B上的命令:
4
、 touch /root/.ssh/authorized_keys (如果已经存在这个文件, 跳过这条)
5
、 chmod 600 ~/.ssh/authorized_keys (# 注意: 必须将~/.ssh/authorized_keys的权限改为600, 该文件用于保存ssh客户端生成的公钥,可以修改服务器的ssh服务端配置文件/etc/ssh/sshd_config来指定其他文件名) 
6
、 cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys (id_rsa.pub的内容追加到 authorized_keys , 注意不要用,否则会清空原有的内容,使其他人无法使用原有的密钥登录)
7
、 回到A机器: ssh root@192.168.31.200 (不需要密码, 登录成功)

posted @ 2017-05-19 14:44  13684995613  阅读(451)  评论(0编辑  收藏  举报