Jenkins是一个开源的、提供友好操作界面的持续集成(CI)工具,起源于Hudson(Hudson是商用的),主要用于持续、自动的构建/测试软件项目、监控外部任务的运行(这个比较抽象,暂且写上,不做解释)。Jenkins用Java语言编写,可在Tomcat等流行的servlet容器中运行,也可独立运行。通常与版本管理工具(SCM)、构建工具结合使用。常用的版本控制工具有SVN、GIT,构建工具有Maven、Ant、Gradle。
功能 备份、迁移、恢复jenkins首先找到JENKINS_HOME,因为Jenkins的所有的数据都是以文件的形式存放在JENKINS_HOME目录中。不管是迁移还是备份,只需要操作JENKINS_HOME就行了。
迁移:建议将JENKINS_HOME打包后在拷贝,windows可以用zip,rar等,Linux有zip,tar等,然后将打包的文件解压到新的JENKINS_HOME目录就行了。
备份:如果是临时备份,整个压缩文件就行了。
恢复:恢复的时候需要先停止jenkins
升级JenkinsJenkins的开发迭代非常快,每周发布一个开发版本,长期支持版每半年更新一次(ps:大版本更新)。如此频繁的更新,怎么升级呢?
war:下载新版的war文件,替换旧版本war文件。重启即可。
二进制:卸载旧版本,安装新版本即可。
Jenkins程序下载地址:http://mirrors.jenkins-ci.org/
note:升级前,请测试该版本和你本地数据的兼容性。如何测试:将JENKINS_HOME拷贝一份到新的机器,用新版的程序启动。测试对应的插件和配置。
移动,删除或修改jobs对于移动或删除jobs,只需要简单地移动或删除%JENKINS_HOEM%jobs目录。
对于修改jobs的名字,只需要简单地修改%JENKINS_HOEM%jobs下对应job的文件夹的名字。
对于不经常使用的job,只需要对%JENKINS_HOEM%jobs下对应的jobs的目录zip或tar后存储到其他的地方。
Jenkins 启动时的命令行参数–httpPort=H T T P P O R T , 用 来 设 置 j e n k i n s 运 行 时 的 w e b 端 口 。 − − h t t p s P o r t = HTTP_PORT,用来设置jenkins运行时的web端口。 --httpsPort=HTTP
P
ORT,用来设置jenkins运行时的web端口。−−httpsPort=HTTP_PORT,表示使用https协议。
–httpListenAddress=$HTTP_HOST,用来指定jenkins监听的ip范围,默认为所有的ip都可以访问此jenkins server。
如果jenkins所在的server的timezone不同于用户的timezone,这时候需要修改jenkins的timezone,需要在jenkins启动的时候增加下列参数-Dorg.apache.commons.jelly.tags.fmt.timeZone=TZ
通过脚本启动jenkinsset JENKINS_HOME=C:documents and SettingsAdministrator.hudson
cd /d %JENKINS_HOME%
java -jar jenkins.war --httpPort=8080
查看jenkins的系统信息
以在jenkins的管理页面下的系统信息中,查看所有的jenkins的信息,例如jenkins的启动配置,所依赖的系统的环境变量,所安装的plugins。
| 插件名 | 功能 |
|---|---|
| perforce | 他的label功能来对成功的build进行label |
| Dashboard View | 用来自定义自己的主页 |
| Deploy Plugin | 插件支持将War/Jar部署到远程的应用服务器上,例如Tomcat,JBoss,Glassfish。正在寻找或开发.NET web 应用的自动发布插件。 |
| NUnit Plugin | 创建/打开项目,设定项目执行配置,以及为项目添加测试组件等。 |
| Publish Over FTP Plugin | 这个插件可以将构建的产物(例如:Jar)发布到FTP中去。 |
| Publish Over SSH | 这个插件可以通过ssh连接其他Linux机器 |
| JobConfigHistory Plugin | 非常有用,可以查看job历史配置信息 |
| sidebar links | 这个插件不错,可以添加一些链接到jenkins上,比如把fitnesse的测试集链接添加到上面,方便访问。 |
// 安装依赖包和工具 [root@localhost ~]# yum -y install java-11-openjdk* wget vim // 下载Apache-tomcat包 [root@localhost ~]# wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.54/bin/apache-tomcat-9.0.54.tar.gz // 解压 [root@localhost ~]# ls anaconda-ks.cfg apache-tomcat-9.0.54.tar.gz [root@localhost ~]# tar xf apache-tomcat-9.0.54.tar.gz -C /usr/local/ [root@localhost ~]# cd /usr/local/ [root@localhost local]# ls apache-tomcat-9.0.54 etc include lib64 sbin src bin games lib libexec share [root@localhost local]# mv apache-tomcat-9.0.54/ tomcat // 启动Tomcat,查看web界面内容 [root@localhost local]# cd /usr/local/tomcat/bin/ [root@localhost bin]# ls bootstrap.jar configtest.sh shutdown.sh catalina.bat daemon.sh startup.bat catalina.sh digest.bat startup.sh catalina-tasks.xml digest.sh tomcat-juli.jar ciphers.bat makebase.bat tomcat-native.tar.gz ciphers.sh makebase.sh tool-wrapper.bat commons-daemon.jar setclasspath.bat tool-wrapper.sh commons-daemon-native.tar.gz setclasspath.sh version.bat configtest.bat shutdown.bat version.sh [root@localhost bin]# /usr/local/tomcat/bin/startup.sh start Using CATALINA_base: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Using CATALINA_OPTS: Tomcat started. [root@localhost bin]# ss -anlt State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 0.0.0.0:22 0.0.0.0:* LISTEN 0 1 [::ffff:127.0.0.1]:8005 *:* LISTEN 0 100 *:8080 *:* LISTEN 0 128 [::]:22 [::]:*
以下操作为Jenkins部署操作
将tomcat的配置web配置文件删除,替换成Jenkins包
[root@localhost bin]# cd .. [root@localhost tomcat]# cd webapps/ [root@localhost webapps]# ls docs examples host-manager manager ROOT [root@localhost webapps]# rm -rf docs/ examples/ host-manager/ manager/ [root@localhost webapps]# ls ROOT [root@localhost webapps]# cd ROOT/ [root@localhost ROOT]# ls asf-logo-wide.svg bg-nav.png index.jsp tomcat.svg bg-button.png bg-upper.png RELEASE-NOTES.txt WEB-INF bg-middle.png favicon.ico tomcat.css [root@localhost ROOT]# rm -rf * [root@localhost ROOT]# ls // 在/usr/local/tomcat/webapps目录下载jenkins包 [root@localhost ROOT]# cd .. [root@localhost webapps]# wget http://mirrors.jenkins.io/war-stable/2.303.2/jenkins.war [root@localhost webapps]# ls jenkins jenkins.war ROOT // 重启服务 [root@localhost webapps]# /usr/local/tomcat/bin/shutdown.sh Using CATALINA_base: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Using CATALINA_OPTS: NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED [root@localhost webapps]# /usr/local/tomcat/bin/catalina.sh start Using CATALINA_base: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Using CATALINA_OPTS: Tomcat started. [root@localhost webapps]# ss -anlt State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 0.0.0.0:22 0.0.0.0:* LISTEN 0 100 *:8080 *:* LISTEN 0 128 [::]:22 [::]:*
[root@localhost webapps]# cat /root/.jenkins/secrets/initialAdminPassword add640b3002645008b5f7f44ae292cdd
选择默认设置好的功能直接安装
创建管理员用户



