第一步:下载 jdk 、tomcat、jenkins、maven
jdk:/technetwork/java/javase/downloads/index.html
maven:/download.cgi
jenkins:https://jenkins.io/download/
tomcat:/
我下载的版本是 jdk1.8.0_161,Tomcat 8.0.51,maven、jenkins 就直接下最新版就好了 (好像 jenkins 只支持tomcat8 )
下载完成之后上传到你的阿里云服务器上,我下载的类型都是 tar.gz
安装maven
将maven安装包解压到 /usr/local 目录下
# tar -zxvf apache-maven-3.5.0-bin.tar.gz -C /usr/local
进入maven目录下的 /conf 目录,修改setting.xml文件的mirrors配置国内仓库。
<mirror> <id>nexus-osc</id> <mirrorOf>*</mirrorOf> <name>Nexus osc</name> <url>/nexus/content/groups/public/</url> </mirror>
(3)在 /etc/profile 中添加环境变量配置
export MAVEN_HOME=/usr/local/apache-maven-3.5.0 export PATH=${PATH}:${MAVEN_HOME}/bin
接下来安装jdk(建议jdk 别用yum 安装,否则他不会配置 环境变量,我们在安装svn的时候还需要自己手动在配一下)
mkdir /usr/javatar -xzvf jdk-8u161-linux-x64.tar.gz -C /usr/java/
然后配置jdk环境变量
vim /etc/profile
最后一行添加
#javaJAVA_HOME=/usr/java/jdk1.8.0_161 #你jdk所在的目录CLASSPATH=$JAVA_HOME/lib/PATH=$PATH:$JAVA_HOME/binexport PATH JAVA_HOME CLASSPATH
然后安装ESC键 输入 回车保存
:wq
查看jdk是否安装成功
java -version
会出现以下信息
java version "1.8.0_161"Java(TM) SE Runtime Environment (build 1.8.0_161-b12)Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)
接下来安装svn
运行以下命令安装SVN。
yum install subversion
运行以下命令查看SVN版本。
svnserve --version
按以下步骤创建版本库:
运行以下命令创建目录。
mkdir /var/svn
依次运行以下命令创建版本库。
cd /var/svn
svnadmin create /var/svn/svnrepos
依次运行以下命令查看自动生成的版本库文件。
cd svnrepos
ls
运行命令cd conf/
进入conf目录(该SVN版本库配置文件)。返回结果如下: authz:是权限控制文件。passwd:是账号密码文件。svnserve.conf:SVN服务配置文件。按以下步骤设置账号密码: 运行vi passwd
。按i
键进入编辑模式。在[users]
块中添加用户账号和密码,格式:账号=密码,比如示例中的suzhan = redhat(注意等号两端要有一个空格)。按Esc
键退出编辑模式,并输入:wq
保存并退出。按以下步骤设置权限: 运行vi authz
。按i
键进入编辑模式。在末尾添加如下代码(其中,r表示读,w表示写):
[/]
suzhan=rw
按Esc
键退出编辑模式,并输入:wq
保存并退出。
按以下步骤修改svnserve.conf文件。 运行命令vi svnserve.conf
。按i
键进入编辑模式。打开以下几个注释(注意每行不能以空格开始,等号两端要有一个空格):
anon-access = read #匿名用户可读,您也可以设置 anon-access = none,不允许匿名用户访问。设置为 none,可以使日志日期正常显示
auth-access = write #授权用户可写
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz #使用哪个文件作为权限文件
realm = /var/svn/svnrepos #认证空间名,版本库所在目录
按Esc
键退出编辑模式,并输入:wq
保存并退出。运行以下命令启动SVN版本库。
svnserve -d -r /var/svn/svnrepos
运行命令ps -ef |grep svn
查看SVN服务是否开启。
如果返回结果如下图所示,表示SVN服务已经开启。
注意:
运行以下命令停止SVN命令。
killall svnserve
添加安全组规则
SVN服务的默认端口为TCP 3690。您需要登录ECS管理控制台,添加安全组规则放行TCP 3690端口。
在Windows上测试
这部分说明如何从本地(Windows操作系统)访问ECS实例上安装的SVN服务。
在本地机器上安装TortoiseSVN客户端。
在您的本地项目文件夹(如示例中的C:\KDR),右键空白处弹出菜单,选择SVN检出。
指定资源库URL,格式为svn://实例公网IP地址/资源库名
;指定检出至目录(如本示例中的C:\KDR);再单击确定。如果出现以图所示信息,表示检出成功。
接下来安装tomcat,回到之前apache-tomcat-8.5.29.tar.gz 所在目录执行以下命令
tar -xzvf apache-tomcat-8.5.29.tar.gz -C /usr/local/
然后启动tomcat
/usr/local/apache-tomcat-8.5.29/bin/startup.sh
http://ip:8080/ 进行访问
注意 端口需要到你服务器控制台 安全组添加
接下来就是安装 jenkins
回到之前jenkins 上传的目录,拷贝jenkins 到你的tomcat webapps目录下
cp jenkins.war /usr/local/tomcat7/webapps/
重启tomcat 访问 jenkins
http://ip:8080/jenkins
启动时间会有点长 ,登陆会让你输入密码,密码在哪里网页上有说明
然后输入密码后 让你选择插件 我选的是推荐安装的插件,安装完成后会少了maven插件,需要安装一个,不然在新建任务的时候没有 maven选项
选择可选插件,输入 Maven Integration plugin ,因为我安装过了所以找不到,你们搜索到了就之间点安装
这一步好了 接下来配置jdk 和 maven 路径
1.进入全局工具配置
去掉自动安装,填写路径
接下来新建任务
选择丢弃构建
配置svn
注意如果不知道怎么创建 maven 项目 看这个教程/wx5040257/article/details/77388086?locationNum=7&fps=1
配置 构建触发器,我配置的是 ,只要我提交代码 2分钟后帮我构建一次 ,poll scm 不知道配置去百度很多教程
好了下面最重要的一步来了 我是参考 /jesonjoke/article/details/77861888 这位大神写的
说明一下,我有两个tomcat 一个tomcat 放jenkins 一个放项目
以下脚本的tomcat名字 是我放项目的tomcat,你们别把自己 jenkins 所在的tomcat名字写在里面
cd /usr/local/apache-tomcat-8.5.32/webapps/ #进入webapps rm -rf capital* #删除之前的项目port=`netstat -nlp | grep -w 8005 | sed -r 's#.* (.*)/.*#\1#'`if [ -n "$port" ]; thenkill -9 $portfi tomcat=`ps -ef|grep apache-tomcat-8.5.32 | grep -v 'grep\|tail' | awk '{print $2}'`if [ -n "$tomcat" ]; thenkill -9 $tomcatfi cd /root/.jenkins/jobs/capital/workspace/target/ #进入jenkins 打war包的路径cp capital.war /usr/local/apache-tomcat-8.5.32/webapps/ #拷贝项目到tomcat webappsexport BUILD_ID=capitalId #这句话必须加 不然我tomcat 启动不了,我也不知道原因,id是随便取得sh /usr/local/apache-tomcat-8.5.32/bin/startup.sh 启动tomcat
好了jenkins 配置到此就结束了,你们可以立即构建试试
对了还要注意的是 你在构建之前 tomcat7 也就是项目所在的tomcat 一定要先启动 不然 脚本呢第一步kill tomcat 会报错的。
如果觉得《阿里云 jenkins svn maven 构建自动化部署》对你有帮助,请点赞、收藏,并留下你的观点哦!