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

2024-04-25 21:48

本文主要是介绍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自动化部署的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/935888

相关文章

linux打包解压命令方式

《linux打包解压命令方式》文章介绍了Linux系统中常用的打包和解压命令,包括tar和zip,使用tar命令可以创建和解压tar格式的归档文件,使用zip命令可以创建和解压zip格式的压缩文件,每... 目录Lijavascriptnux 打包和解压命令打包命令解压命令总结linux 打包和解压命令打

Docker部署Jenkins持续集成(CI)工具的实现

《Docker部署Jenkins持续集成(CI)工具的实现》Jenkins是一个流行的开源自动化工具,广泛应用于持续集成(CI)和持续交付(CD)的环境中,本文介绍了使用Docker部署Jenkins... 目录前言一、准备工作二、设置变量和目录结构三、配置 docker 权限和网络四、启动 Jenkins

linux如何复制文件夹并重命名

《linux如何复制文件夹并重命名》在Linux系统中,复制文件夹并重命名可以通过使用“cp”和“mv”命令来实现,使用“cp-r”命令可以递归复制整个文件夹及其子文件夹和文件,而使用“mv”命令可以... 目录linux复制文件夹并重命名我们需要使用“cp”命令来复制文件夹我们还可以结合使用“mv”命令总

Python自动化处理手机验证码

《Python自动化处理手机验证码》手机验证码是一种常见的身份验证手段,广泛应用于用户注册、登录、交易确认等场景,下面我们来看看如何使用Python自动化处理手机验证码吧... 目录一、获取手机验证码1.1 通过短信接收验证码1.2 使用第三方短信接收服务1.3 使用ADB读取手机短信1.4 通过API获取

Rust中的Drop特性之解读自动化资源清理的魔法

《Rust中的Drop特性之解读自动化资源清理的魔法》Rust通过Drop特性实现了自动清理机制,确保资源在对象超出作用域时自动释放,避免了手动管理资源时可能出现的内存泄漏或双重释放问题,智能指针如B... 目录自动清理机制:Rust 的析构函数提前释放资源:std::mem::drop android的妙

Linux使用cut进行文本提取的操作方法

《Linux使用cut进行文本提取的操作方法》Linux中的cut命令是一个命令行实用程序,用于从文件或标准输入中提取文本行的部分,本文给大家介绍了Linux使用cut进行文本提取的操作方法,文中有详... 目录简介基础语法常用选项范围选择示例用法-f:字段选择-d:分隔符-c:字符选择-b:字节选择--c

Python自动化Office文档处理全攻略

《Python自动化Office文档处理全攻略》在日常办公中,处理Word、Excel和PDF等Office文档是再常见不过的任务,手动操作这些文档不仅耗时耗力,还容易出错,幸运的是,Python提供... 目录一、自动化处理Word文档1. 安装python-docx库2. 读取Word文档内容3. 修改

Python自动化办公之合并多个Excel

《Python自动化办公之合并多个Excel》在日常的办公自动化工作中,尤其是处理大量数据时,合并多个Excel表格是一个常见且繁琐的任务,下面小编就来为大家介绍一下如何使用Python轻松实现合... 目录为什么选择 python 自动化目标使用 Python 合并多个 Excel 文件安装所需库示例代码

SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程

《SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程》本文详细介绍了如何在虚拟机和宝塔面板中安装RabbitMQ,并使用Java代码实现消息的发送和接收,通过异步通讯,可以优化... 目录一、RabbitMQ安装二、启动RabbitMQ三、javascript编写Java代码1、引入

Linux使用nload监控网络流量的方法

《Linux使用nload监控网络流量的方法》Linux中的nload命令是一个用于实时监控网络流量的工具,它提供了传入和传出流量的可视化表示,帮助用户一目了然地了解网络活动,本文给大家介绍了Linu... 目录简介安装示例用法基础用法指定网络接口限制显示特定流量类型指定刷新率设置流量速率的显示单位监控多个