本文主要是介绍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
自定义安装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)全局安全配置
3)全局工具配置
①maven
先将maven的包解压,然后配置,记得到settings.xml文件
②jdk
③git或者svn(我用的git)
3)安装插件
在未安装中查找到Deploy to contailner(用于构建后的操作)
4)创建任务:git跟svn一样配置
5)构建:
goals:使用maven的命令
我这里又给配置了shell脚本(里面是将jenkins打包的war包项目复制到tomcat下,然后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" />
②
下面去点击立即构建就可以从git或svn上自动拉取新的项目了
7)构建触发器
这个地址用于svn或者git连接
svn:复制post-commit文件
git:
url为上面的地址
这样,项目一提交到svn或者git上,jenkins就可以自动去发布新项目了
以上步骤所需的压缩包地址下载:
链接: https://pan.baidu.com/s/1KTT5t-c590VBtD9FRwVNnQ 提取码: 23xf
如果链接失效,请给我留言
这篇关于linux下jenkins+码云/svn+maven+tomcat自动化部署的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!