linux下jenkins+码云/svn+maven+tomcat自动化部署

1、配置jdk

1)解压jdk,我用的是jdk1.8,使用命令tar xf jdk-8u171-linux-x64.tar.gz 

2)配置环境变量

vim /etc/profile

PATH=$JAVA_HOME/bin:$PATH

export JAVA_HOME=/usr/local/jdk1.8.0_171

export JAVA_BIN=/usr/local/jdk1.8.0_171/bin

export PATH=$JAVA_HOME/bin:$PATH

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

3)环境变量生效

source /etc/profile

4)查看jdk是否安装成功

 java -version

2、安装svn

ps:我使用的是yum安装

1)rpm -qa subversion //检查是否安装了低版本的SVN

yum remove subversion //如果存储旧版本,卸载旧版本SVN

2)开始安装

yum -y install subversion

svnserve --version //查看版本

 

3)创建版本仓库(project设置为项目名)

mkdir -p /data/svn/project

svnadmin create /data/svn/project/

 

4)配置文件

进入到/data/svn/project/conf

①svnserve.conf

 

[general]

anon-access = none

auth-access = write

password-db = passwd

authz-db = authz

 

②passwd

创建一个名为subman,密码为123123

[users]

subman = 123123

③authz

[/]

subman = rw

* =

 

5)启动svn

启动svn:svnserve -d -r /data/svn

查看:lsof -i:3690

 

客户端访问地址:svn://192.168.1.107/project

3、使用git

ps:必须要将jenkins部署到外网,因为内网地址git无法访问

1)安装git,因为要从码云或者git上拉取代码

 第一步: 安装编译 git 时需要的包

yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel

yum install -y gcc perl-ExtUtils-MakeMaker

 第二步: 删除已有的 git

yum remove git

 第三步: Git 官网下载 Git 最新版 tar 包, 移动到/usr/src 目录下

cd /usr/src

tar -zxvf git-2.9.3.tar.gz

 第四步: 编译安装(目录:/usr/local/git)

cd git-2.9.3

make prefix=/usr/local/git all

make prefix=/usr/local/git install

echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrc//写入环境变量中

source /etc/bashrc

 第五步: 检查一下版本号

git --version

 

 

4、jenkins安装、配置

1)安装
 把 jenkins.war 放在 Tomcat 解压目录/webapps 目录下
 打开 Tomcat 解压目录/server.xml 修改 URL 地址的编码

vim /opt/tomcat/conf/server.xml
71 <Connector port="8080" protocol="HTTP/1.1"
72 connectionTimeout="20000"
73 redirectPort="8443" URIEncoding="UTF-8"/>


 启动 Tomcat 并通过浏览器访问

jenkins启动报找不到文件路径

解决方法:需要在tomcat文件夹下,创建一个叫tmp的文件夹


 网址示例: http://192.168.70.131:8080/jenkins

linux下jenkins+码云/svn+maven+tomcat自动化部署

自定义安装jenkis,选择安装推荐的插件

创建管理员,可以继续使用admin账号

下面开始进行配置

ps:我设置完上面的后,刷新页面后,发现页面空白,解决方法:

cd /root/.jenkins/

打开config.xml文件

<useSecurity>true</useSecurity>

<authorizationStrategy class="hudson.security.AuthorizationStrategy$Unsecured"/>

<securityRealm class="hudson.security.HudsonPrivateSecurityRealm">

<disableSignup>true</disableSignup>

<enableCaptcha>false</enableCaptcha>

</securityRealm>

<authorizationStrategy class="hudson.security.AuthorizationStrategy$Unsecured"/>

这个权限对应“任何用户可以做任何事(没有任何限制)”

 

2)全局安全配置

linux下jenkins+码云/svn+maven+tomcat自动化部署

3)全局工具配置

①maven

先将maven的包解压,然后配置,记得到settings.xml文件

linux下jenkins+码云/svn+maven+tomcat自动化部署

linux下jenkins+码云/svn+maven+tomcat自动化部署

②jdk

linux下jenkins+码云/svn+maven+tomcat自动化部署

③git或者svn(我用的git)

linux下jenkins+码云/svn+maven+tomcat自动化部署

3)安装插件

在未安装中查找到Deploy to contailner(用于构建后的操作)

linux下jenkins+码云/svn+maven+tomcat自动化部署

4)创建任务:git跟svn一样配置

linux下jenkins+码云/svn+maven+tomcat自动化部署

linux下jenkins+码云/svn+maven+tomcat自动化部署

linux下jenkins+码云/svn+maven+tomcat自动化部署

linux下jenkins+码云/svn+maven+tomcat自动化部署

5)构建:

linux下jenkins+码云/svn+maven+tomcat自动化部署

linux下jenkins+码云/svn+maven+tomcat自动化部署

goals:使用maven的命令

我这里又给配置了shell脚本(里面是将jenkins打包的war包项目复制到tomcat下,然后tomcat的重启)

linux下jenkins+码云/svn+maven+tomcat自动化部署

linux下jenkins+码云/svn+maven+tomcat自动化部署

shell脚本内容:

#!/bin/sh
tomcat_home=/usr/local/tomcat
#【3.1】 停止tomcat变量
SHUTDOWN=$tomcat_home/bin/shutdown.sh
#【3.2】 启动tomcat变量
STARTTOMCAT=$tomcat_home/bin/startup.sh

sudo cp -f /root/.jenkins/workspace/mdm/target/Apple.war /usr/local/tomcat/webapps/Apple.war
chmod -R 777 /usr/local/tomcat/webapps/Apple.war

$SHUTDOWN
sleep 10
$STARTTOMCAT

这样就不用去使用构建后的操作了

6)构建后的操作

①先将tomcat配合一个用户,打开在conf下的文件tomcat-users.xml

<role rolename="manager-gui"/>

<role rolename="manager-script"/>

<role rolename="manager-jmx"/>

<role rolename="manager-status"/>

<user username="tomcat_user" password="123456"

roles="manager-gui,manager-script,manager-jmx,manager-status" />

linux下jenkins+码云/svn+maven+tomcat自动化部署

linux下jenkins+码云/svn+maven+tomcat自动化部署

linux下jenkins+码云/svn+maven+tomcat自动化部署

linux下jenkins+码云/svn+maven+tomcat自动化部署

linux下jenkins+码云/svn+maven+tomcat自动化部署

下面去点击立即构建就可以从git或svn上自动拉取新的项目了

7)构建触发器

linux下jenkins+码云/svn+maven+tomcat自动化部署

这个地址用于svn或者git连接

svn:复制post-commit文件

linux下jenkins+码云/svn+maven+tomcat自动化部署

git:

linux下jenkins+码云/svn+maven+tomcat自动化部署

url为上面的地址

这样,项目一提交到svn或者git上,jenkins就可以自动去发布新项目了

 

以上步骤所需的压缩包地址下载:

链接: https://pan.baidu.com/s/1KTT5t-c590VBtD9FRwVNnQ 提取码: 23xf 

如果链接失效,请给我留言