热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

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

这篇文章主要介绍了详解docker部署Jenkins新手使用教程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着

本文通过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的使用介绍:

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

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

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

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

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

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

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

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

下面新建一个项目看看:

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

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

GitHub project:GitHub托管的项目URL。

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

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

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

构建触发器:

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

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

这个是Maven打包命令

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

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

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


推荐阅读
  • Jboss的EJB部署描述符standardjaws.xml配置步骤详解
    本文详细介绍了Jboss的EJB部署描述符standardjaws.xml的配置步骤,包括映射CMP实体EJB、数据源连接池的获取以及数据库配置等内容。 ... [详细]
  • 本文介绍了一个适用于PHP应用快速接入TRX和TRC20数字资产的开发包,该开发包支持使用自有Tron区块链节点的应用场景,也支持基于Tron官方公共API服务的轻量级部署场景。提供的功能包括生成地址、验证地址、查询余额、交易转账、查询最新区块和查询交易信息等。详细信息可参考tron-php的Github地址:https://github.com/Fenguoz/tron-php。 ... [详细]
  • 本文介绍了在Android Studio中使用命令行build gradle的方法,并解决了一些常见问题,包括手动配置gradle环境变量和解决External Native Build Issues的方法。同时提供了相关参考文章链接。 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • 安装mysqlclient失败解决办法
    本文介绍了在MAC系统中,使用django使用mysql数据库报错的解决办法。通过源码安装mysqlclient或将mysql_config添加到系统环境变量中,可以解决安装mysqlclient失败的问题。同时,还介绍了查看mysql安装路径和使配置文件生效的方法。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • 在重复造轮子的情况下用ProxyServlet反向代理来减少工作量
    像不少公司内部不同团队都会自己研发自己工具产品,当各个产品逐渐成熟,到达了一定的发展瓶颈,同时每个产品都有着自己的入口,用户 ... [详细]
  • 本文介绍了一些Java开发项目管理工具及其配置教程,包括团队协同工具worktil,版本管理工具GitLab,自动化构建工具Jenkins,项目管理工具Maven和Maven私服Nexus,以及Mybatis的安装和代码自动生成工具。提供了相关链接供读者参考。 ... [详细]
  • Ubuntu安装常用软件详细步骤
    目录1.GoogleChrome浏览器2.搜狗拼音输入法3.Pycharm4.Clion5.其他软件1.GoogleChrome浏览器通过直接下载安装GoogleChro ... [详细]
  • SpringBoot整合SpringSecurity+JWT实现单点登录
    SpringBoot整合SpringSecurity+JWT实现单点登录,Go语言社区,Golang程序员人脉社 ... [详细]
  • Android日历提醒软件开源项目分享及使用教程
    本文介绍了一款名为Android日历提醒软件的开源项目,作者分享了该项目的代码和使用教程,并提供了GitHub项目地址。文章详细介绍了该软件的主界面风格、日程信息的分类查看功能,以及添加日程提醒和查看详情的界面。同时,作者还提醒了读者在使用过程中可能遇到的Android6.0权限问题,并提供了解决方法。 ... [详细]
  • 手把手教你使用GraphPad Prism和Excel绘制回归分析结果的森林图
    本文介绍了使用GraphPad Prism和Excel绘制回归分析结果的森林图的方法。通过展示森林图,可以更加直观地将回归分析结果可视化。GraphPad Prism是一款专门为医学专业人士设计的绘图软件,同时也兼顾统计分析的功能,操作便捷,可以帮助科研人员轻松绘制出高质量的专业图形。文章以一篇发表在JACC杂志上的研究为例,利用其中的多因素回归分析结果来绘制森林图。通过本文的指导,读者可以学会如何使用GraphPad Prism和Excel绘制回归分析结果的森林图。 ... [详细]
  • mysql自动打开文件_让docker中的mysql启动时自动执行sql文件
    本文提要本文目的不仅仅是创建一个MySQL的镜像,而是在其基础上再实现启动过程中自动导入数据及数据库用户的权限设置,并且在新创建出来的容器里自动启动My ... [详细]
  • 本文主要介绍关于linux文件描述符设置,centos7设置文件句柄数,centos7查看进程数的知识点,对【Linux之进程数和句柄数】和【linux句柄数含义】有兴趣的朋友可以看下由【东城绝神】投 ... [详细]
  • docker安装到基本使用
    记录docker概念,安装及入门日常使用Docker安装查看官方文档,在"Debian上安装Docker",其他平台在"这里查 ... [详细]
author-avatar
手机用户2502923903
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有