服务器 
首页 > 服务器 > 浏览文章

详解docker部署Jenkins新手使用教程

(编辑:jimmy 日期: 2024/11/16 浏览:3 次 )

本文通过docker部署Jenkins+Maven+SVN+Tomcat,在基础镜像Jenkins上安装Maven及自带的OpenJDK形成新的镜像,然后通过SVN将项目checkout下来,由Jenkins自带的插件或脚本将Maven生成的war包发送到指定的Tomcat的WebApps目录下,最终启动Tomcat完成自动化部署。

通过docker命令:sudo docker run –d -p 9898:8080 -p 50000:50000 -v /alidata/projects/jenkins:/var/jenkins_home -u 0 jenkins将端口暴露出来并将容器的目录挂载出来(方便对容器进行修改)

Jenkins安装会提示输入密码,该密码在Jenkins初次启动的时候会有出现,可copy输入即可,其余的默认安装,在此不做阐述,下面进入Jenkins的使用介绍:

详解docker部署Jenkins新手使用教程

首次使用可点击系统管理 à 点击系统设置 进行全局设置,这个是需要全局设置的时候才设置的,可不设置,这样在创建项目的时候针对每个项目的不同做对应的设置,如果创建项目时不设置就会采用系统设置中的设置模式。

详解docker部署Jenkins新手使用教程

关于Global Tool Configuration可根据工具的目录进行配置,如果没有Jenkins可在构建的时候自动下载。

Configure Global Security选项是对权限的管理,可设置开放自动注册权限,让用户自动注册进行项目操作(运营服权限已开)。

读取设置:放弃当前内存中所有的设置信息并从配置文件中重新读取 仅用于当您手动修改配置文件时重新读取设置。      

管理插件:添加、删除、禁用或启用Jenkins功能扩展插件。需要的插件可在此处下载,目前Jenkins提供了大量的插件,基本上可满足项目需求,如果插件下载失败,可去官网下载:

官网插件下载地址https://wiki.jenkins-ci.org/display/JENKINS/Plugins

下载完成点击高级,上传插件:

详解docker部署Jenkins新手使用教程

详解docker部署Jenkins新手使用教程

安装完成后,刷新Jenkins WEB界面即可。

下面新建一个项目看看:

详解docker部署Jenkins新手使用教程

我们的项目都是maven项目,所以选择maven选项,填上构建的项目的名称,确认即可。

详解docker部署Jenkins新手使用教程

描述:填写对该创建的项目的描述。

GitHub project:GitHub托管的项目URL。

Throttle builds(节流建立):设置规定时间内的构建数和速率。

丢弃旧的构建:常用,避免构建的项目越来越多,占用内存。

详解docker部署Jenkins新手使用教程

源码管理处,选择SVN,填写URL和用户密码,项目在构建时就会自动去checkout下来了,Check-out Strategy处选择的是SVN更新代码的形式,读者可根据个人需要进行更改。

详解docker部署Jenkins新手使用教程

构建触发器:

主要介绍一下Build periodically和Poll SCM的使用,这两个都是定时触发构建的时间日程表,但是Build periodically的作用是,到达设定的时间,该项目就必定进行重新构建,但Poll SCM则是到达设定时间,如果SVN上有更新才进行构建,否则不构建。

设定的构建时间规则格式可查看右边的?帮助,有详细介绍。

详解docker部署Jenkins新手使用教程

这个是Maven打包命令

详解docker部署Jenkins新手使用教程

构建设置是可发送邮件通知,每次构建完成都可以发送报告

构建后操作需注意,要在Tomcat中开启tomcat-users.xml权限

详解docker部署Jenkins新手使用教程

本篇为Jenkins新手篇,不了解docker的同学启动步骤可改为自己的启动方式,其余都相同,本篇采取的是使用Jenkins自带的软件进行部署,进阶篇会通过自己编辑的shell脚本部署,毕竟都是自己的编写,比较好掌控。

上一篇:使用docker部署一个简单的c/c++程序的方法
下一篇:docker常用命令总结(推荐)
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。