文档章节

Jekins

miaojiangmin
 miaojiangmin
发布于 2017/08/24 11:59
字数 684
阅读 19
收藏 0

因为git的证书问题搞定了,今天在公司的台式机上搭建了一下Jekins服务器。 开始因为忘记了密码的问题,百度了一下重置了密码。

打开忘记密码的用户文件夹,里面就一个文件config.xml。嗯,就是它了。打开config.xml,里面有一堆的东西,找找。。。找到了<passwordHash>节点,如图:

把<passwordHash>节点的内容(图中黑色的那一串)换成

#jbcrypt:$2a$10$DdaWzN64JgUtLdvxWIflcuQu2fgrrMSAMabF5TSrGK5nXitqK9ZMS

现在只是能够自动拉取代码,能够用maven 的clean install。我想要做的是,对不同模块,可以自动把编译后的结果复制到服务器中,然后把老jar或war包进行复制,停止服务,替换jar或war包,重启服务。 如果能先达到这种效果,也是非常不错的。 后面可以用docker的方式进行打包和部署,这样可以明显提高部署的效率。降低开发成本。

本来还想用多构建项目,可以实现不同项目间的变换。但是测试了一下还是失败了。

一篇文章中介绍构建成功后的动作,添加shell

#!/bin/bash  
#copy file and restart tomcat

tomcat_path=/usr/local/tomcat2

project=easy-springmvc-maven

war_name=easy-springmvc-maven.war

war_path=http://192.168.106.128:8080/jenkins/job/jeekins-test/ws/target

server_port=8082

file_path=/home/bingyue/.jenkins/jobs/jeekins-test/workspace/target

now=$(date +"%Y%m%d%H%M%S")

echo "the shell execute time is ${now}"

echo `lsof -n -P -t -i :${server_port}`

tomcat_pid=`lsof -n -P -t -i :${server_port}`

echo "the tomcat_pid is ${tomcat_pid}"

if [ "${tomcat_pid}" != "" ]; then

kill -9 $tomcat_pid

echo "kill the server"

fi

echo "rm ${tomcat_path}/webapps/${war_name}"

rm ${tomcat_path}/webapps/${war_name}

echo "rm -rf ${tomcat_path}/webapps/${project}"

rm -rf ${tomcat_path}/webapps/${project}

cd $file_path

if [ -f ${war_name} ]; then

cp ${war_name} ${tomcat_path}/webapps

else

echo "${war_name} unexists"

fi

export JAVA_HOME=/data/jdk7

export CATALINA_HOME2=/usr/local/apache-tomcat-2

export CATALINA_BASE2=/usr/local/apache-tomcat-2

$tomcat_path/bin/startup.sh

echo "server restarted"



如果jekins部署到服务器中的话,这个非常具有借鉴意义。 参考的文章 转:使用Jenkins配置Git+Maven的自动化构建

刚刚配置好了,在window的环境下可以把本地编译好的war包发布到服务器上,并且可以运行脚本。

也就是说以后发布的话,只要配置好了,就可以使之自动化了。开心。。。

下面是我自己写的shell脚本文件

#!/bin/bash
#copy file and restart tomcat


tomcat_path=/usr/local/tomcat/sys-8081

project=sys

war_name=sys.war

war_path=/home/centos/war/

server_port=8081

now=$(date +"%Y%m%d%H%M%S")

echo "the shell execute time is ${now}"



echo `lsof -n -P -t -i :${server_port}`

tomcat_pid=`lsof -n -P -t -i :${server_port}`

echo "the tomcat_pid is ${tomcat_pid}"

if [ "${tomcat_pid}" != "" ]; then

kill -9 $tomcat_pid

echo "kill the server"

fi

#先备份,再删除

echo "备份war包"

cp ${tomcat_path}/webapps/${war_name} ${tomcat_path}/webapps/${war_name}${now}

#删除原来的war包
echo "删除war包"

rm ${tomcat_path}/webapps/${war_name}

rm -rf ${tomcat_path}/webapps/${project}


cd $war_path

if [ -f ${war_name}  ]; then

cp ${war_name} ${tomcat_path}/webapps

else

echo "${war_name} 不存在"

fi


$tomcat_path/bin/startup.sh

echo "server 启动中"


© 著作权归作者所有

共有 人打赏支持
miaojiangmin
粉丝 9
博文 358
码字总数 95378
作品 0
宁波
程序员
持续集成和docker

现在的持续集成,因为docker技术的成熟,有了长足的进步。 记得我在以前的公司的时候,测试环境还有生产环境的发布都需要组长来发布。有时候,他忙的话,发布就会延后,特别是测试环节,直接...

miaojiangmin
2016/11/07
24
0
Name for argument type [java.lang.String] not avai

项目通过MyEclipe部署到Tomcat运行一切OK 使用Jekins,Ant进行管理,部署也OK,但是访问项目时就出现: Name for argument type [java.lang.String] not available, and parameter name informa...

木子丰
2015/05/14
0
0
spring-boot项目的docker集成化部署

spring-boot项目的docker集成化部署 [toc] 前言 据说流行的微服务和docker一起,更配哦!接下来,使用简单spring-boot项目演示docker的集成化部署的案例,在看过微笑的博客觉得不过瘾,自己动...

weir_will
10/06
0
0
运维常用工具

1、linux系统基础,常用命令 2、监控工具 cacti,nagios,zibbix ,nagios 3、shell脚本 4、docker 环境迁移,快速部署 5、jekins 持续集成,部署...

大道至精
2016/12/09
51
0
奇怪的Git代码问题

遇到一个奇怪问题,想请问一下大家。 情况:本地代码全部提交到git 上了。 在服务器上,用jekins下载代码,打包,启动 tomcat,访问页面A总是404,其余页面正常,我把本地编译好的打包到服务...

一袭青衫
2014/03/28
233
1

没有更多内容

加载失败,请刷新页面

加载更多

[Hive]JsonSerde使用指南

注意: 重要的是每行必须是一个完整的JSON,一个JSON不能跨越多行,也就是说,serde不会对多行的Json有效。 因为这是由Hadoop处理文件的工作方式决定,文件必须是可拆分的,例如,Hadoop将在...

Mr_yul
11分钟前
0
0
54:mysql修改密码|连接mysql|mysql常用命令

1、mysql修改密码: root用户时mysql的超级管理员,默认mysql的密码是空的,直接可以连接上去的,不过这样不安全; 注释:为了方便的使用mysql,需要把mysql加入到环境变量里; #后续自己输入mys...

芬野de博客
18分钟前
0
0
鼠标单击复制粘贴标签中的内容

<span ref="spanContentOne" id="spanContentOne" style="font-size: 14px;">或许不是最亮眼,总比瞎买强一点</span><!--<input type="button" @click="copyClick('1')" value="复制" />-......

帝子兮
22分钟前
0
0
使用axel多线程疯狂下载

在Linux中比较常见见的下载工具是curl和wget,但是下载比较大的文件两者都不支持多线程, 断点续传的作用不见得能发挥到最大。今天介绍一个axel工具,开启多线程疯狂下载。 安装 Fedora/Cen...

linuxprobe16
25分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部