公司最近有一个项目比较大,有6个子项目,开发分为开发环境、测试环境、正式环境,测试环境每次发布多个项目,一个发布n次;每次发布都是打war包,copy代码,停止tomcat|jetty,启动服务器真心麻烦。使用jenkins,只需要点击一下立即构建,就可以喝茶去了。

java web项目, android , ios 也是 支持的;

参考自己站内博客:[jenkins linux 2020年更新 -增加docker - rancher ]

 

注意:

1:tomcat不能删除所有的manger相关的project

2:要在jekins配置tomcat的管理员账号;操作的tomcat必须处于启动状态,否则报错Caused by: java.net.ConnectException: Connection refused: connect

3:Jenkins 中创建项目时没有Maven项目怎么办 Maven Integration Plugin

4:项目目录中的文件不要用其他工具打开,防止jekins删除不了webapp下面部署的项目

5:shiro-ehcache在持续集成无法发布问题

6:tomca 易错 配置 PASSION之SVN+MAVEN+TOMCAT+JENKINS配置易错处

易错配置之:

Tomcat Undeploy Failed Error

7:修改tomcat黑窗口命名 启动窗口(startup.bat)的名字  bin/catalina.bat 修改 if "%TITLE%" == "" set TITLE=想要修改的名字Tomcat

 

版本:Jenkins ver. 2.46.3

 

类似国内集成部署工具:http://www.walle-web.io/

国外其他CI工具:TeamCity,  详细介绍

Microservices 场景下的持续部署 | 吕健

 

修改jenkins的默认端口

mac 电脑默认 jenkins 安装目录:/Users/Shared/Jenkins

 

 

Mac环境中Jenkins的停止和启动命令

启动

sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist

停止

sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist

Jenkins怎么启动和停止服务

Jenkins学习一:Jenkins是什么?

Jenkins学习二:Jenkins安装与配置

Jenkins入门系列之——01第一章 Jenkins是什么?

MAC上卸载Jenkins的方法

Jenkins 忘记密码解决方案

 

我们项目中使用截图:

 

 

/Users/zhangsan/.bash_profile

## ADD JAVA_VERSION
#export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_101.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

# ADD ANDROID-SDK-ROOT
export ANDROID_SDK_ROOT=/work/SDK/android-sdk-macosx
export PATH=$ANDROID_SDK_ROOT/tools:$ANDROID_SDK_ROOT/platform-tools:$PATH


# ADD Gradle
export GRADLE_USER_HOME=/Users/duandazhi/.gradle/
export PATH=$GRADLE_USER_HOME/wrapper/dists/gradle-2.14.1-all/8bnwg5hd3w55iofp58khbp6yv/gradle-2.14.1/bin:$PATH


# ADD Maven
export M2_HOME=/Library/apache-maven-3.5.0
export PATH=$M2_HOME/bin:$PATH


# Add environment variable COCOS_CONSOLE_ROOT for cocos2d-x
COCOS_CONSOLE_ROOT=/work/Cocos2d-J/cocos2d-js-v3.6/tools/cocos2d-console/bin
export PATH=$COCOS_CONSOLE_ROOT:$PATH

# Add environment variable ANT_ROOT for cocos2d-x
ANT_ROOT=/work/ant/apache-ant/bin
export PATH=$ANT_ROOT:$PATH

# Add environment variable NDK_ROOT for cocos2d-x
NDK_ROOT=/work/NDK/android-ndk
export PATH=$NDK_ROOT:$PATH

 

 

 

如果没有maven 项目,请先安装 maven插件, Maven Integration Plugin

 

 

 

每10分钟构建一次:H/10 * * * *   或*/10 * * * *        */5 * * * * (每5分钟检查一次源码变化)

每天8点构建一次:0 8 * * *

每天19点~23点,两小时构建一次:0 19-23/2 * * *

周一到周五,8点~17点,两小时构建一次:0 8-17/2 * * 1-5

1-6月中每月1号、30号各构建一次:H H 1,30 1-6 *

 

 

 

 

echo 'dazer.bat'
echo 'this is a windows batch in  post steps ======================= dazer '
echo '这些命令 在 打包完成后执行 ,解决 spring boot+swagger ,对应ui 的 jar 无法删除,只能手动关闭tomcat, 删除jar ,在重启 tomcat '
@REM 我是注释,第一步:关闭Tomcat
@REM 第二步:删除safety下面的文件
@REM 第三部:重启tomcat

echo 设置参数
set CATALINA_HOME=D:\Server\tomcat9-safety-8680
set PRJ_NAME=safety.war

@REM 删除之前的
echo 删除之前存在的
d:
cd %CATALINA_HOME%\bin

@REM 停止Tomcat
echo 停止Tomcat
@REM 注释关闭命令,使用服务关闭call shutdown.bat
net stop tomcat9-safety-8680

cd %CATALINA_HOME%\webapps

echo 'del命令删除一个或者多个文件; rd /s 删除目录树'
echo 'del %PRJ_NAME%'
rd /s /q safety


@REM 启动Tomcat
echo 启动Tomcat========
cd %CATALINA_HOME%\bin
@REM 注释命令,使用服务启动  call startup.bat
net start tomcat9-safety-8680
echo 启动Tomcat==sucess======

echo 延迟10s------
ping -n 10 127.0.0.1
echo 启动Tomcat==sucess 2 sucess ======
pause

 

或者可以在这里调用bat脚本,不用一堆; 

cmd /c call C:\Windows\TEMP\mydazer.bat

 

target/safety.war   http://localhost:8380

 

如果找不到Deploy war/ear to a container, 请先去安装插件:Deploy to container Plugin

 

 

配置邮箱:

 

atrhedtlhaxlbcgj

http://www.cnblogs.com/gcgc/p/5631385.html

部署失败还可以自动发送邮件,非常方便。

 

tomcat manger 可能出错:

1:没有访问权限

2:不能远程访问

 

[问题记录]按url context path设置nginx反向代理禅道和Jenkins

location /jenkins {

return302 http://dev.server.com:8002;

}

 

Jenkins服务器磁盘空间管理策略, jenkins构建的速度很快,可以设置自动删除老的构建

本地部署,请看最新的  Alibaba Cloud Tookit   

 

 

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐