Jenkins是一个持续集成平台,它能够从git等源码管理服务器拉取代码、打包并发布到tomcat等中间件,只要配置好相关插件,就可以做到项目的自动化构建、部署,不论是对开发来说监控代码质量,还是对测试来说进行自动化部署,都有很大的帮助。

因为之前有用过jenkins,也写过2篇博客,但是现在回过头去看,其实有很多地方没写明白,知其然,不知其所以然。痛定思痛,决心好好研究下jenkins,也趁这个机会把整个流程重新梳理一遍,同时方便以后查阅。

因为平时上班,只能利用晚上时间搞,前后大概花了一周才使一个helloworld.war能够通过jenkins自动部署在一个tomcat容器中。好了,闲话不多说,开始正文。

环境准备:一台CentOS虚拟机、一个Git服务器(有条件的话用公司的git服务器,没条件的用码云也可以)

(1)首先到jenkins官网下载一个war包,然后下载一个linux版的tomcat并将tomcat解压到虚拟机中的一个文件夹,最后把jenkins.war放到tomcat中并启动tomcat(这个tomcat只用来部署jenkins)。

具体部署步骤不说了,因为安装jenkins网上有太多教程了,大致就那个套路,这里只说下需要注意的一点:

首次登陆jenkins会提示输入“Administrator password”,这个密码可以在2个地方找到:一是tomcat控制台,也就是打出的日志;另一个是根据页面提示,找到密码文件(注意那个截图是在windows下安装jenkins截的,因为之前在linux部署时没截图,不过linux也会有这个路径提示的)

不过我在输入这个密码后也登录不进去,网上查了下,貌似是jenkins默认配置的权限不对,解决方法如下:

把.jenkins/config.xml这个文件的<authorizationStrategy>标签的class属性修改一下即可

1、<authorizationStrategy class="hudson.security.AuthorizationStrategy$Unsecured"/>

这个权限对应“任何用户可以做任何事(没有任何限制)”
2、<authorizationStrategy class="hudson.security.FullControlOnceLoggedInAuthorizationStrategy"/>

这个权限对应“登录用户可以做任何事”
3、<authorizationStrategy class="hudson.security.GlobalMatrixAuthorizationStrategy">

    <permission>hudson.model.Hudson.Administer:test</permission>

    <permission>hudson.scm.SCM.Tag:test</permission>

  </authorizationStrategy>

这个权限对应 test用户可以是管理员、打标签权限。

之前默认是第2个配置,改为第1个然后重启下jenkins就行了

登录成功后跳转到如下页面:

jenkins之从0到1利用Git和Ant插件打war包并自动部署到tomcat(第一话):初次启动jenkins,输入给定密码后登录失败问题解决的更多相关文章

  1. jenkins之从0到1利用Git和Ant插件打war包并自动部署到tomcat(第二话):安装插件,配置JDK、Git、Ant

    jenkins之所以这么强大,离不开丰富的插件库. 要确保jenkins上安装好Git plugin.GitHub plugin.AntPlugin插件,一般在启动jenkins时默认安装的插件中就包 ...

  2. jenkins之从0到1利用Git和Ant插件打war包并自动部署到tomcat(第四话):把war包远程部署到tomcat

    上一节介绍了如何用Ant插件来打war包,本节接着介绍如何把build好的war自动部署到tomcat中 1.先安装 Deploy to container Plugin插件 2. 在构建后操作中添加 ...

  3. jenkins之从0到1利用Git和Ant插件打war包并自动部署到tomcat(第五话):总结以及build.xml文件

    前面基本上把整个配置过程都完整地串起来了,包括可能遇到的难点,按照那个套路应该可以配置好自动打包发布的功能.简单总结下我的学习过程,以及遇到问题是怎样解决的. 准备一个项目源码 刚开始在github和 ...

  4. jenkins之从0到1利用Git和Ant插件打war包并自动部署到tomcat(第三话):创建一个自由风格的项目(非maven),实现自动打war包

    上一节把git和ant安装在虚拟机,并在jenkins上做了相关配置,接下来就可以真正开始构建一个项目了 1.新建一个自由风格的项目,因为是用ant打包,所以不要选择构建maven项目 2.配置源码管 ...

  5. Jenkins自动打war包,并部署到tomcat服务器

    由于每次修改完代码,都要手动打包部署,很麻烦.今天研究了一下Jenkins自动化部署,大概有以下几个步骤: 1.先配置tomcat 7的访问用户和密码.文件位于conf/tomcat-users.xm ...

  6. docker:(5)利用docker -v 和 Publish over SSH插件实现war包自动部署到docker

    在 docker:(3)docker容器挂载宿主主机目录 中介绍了运行docker时的一个重要命令 -v sudo docker run -p : --name tomcat_xiao_volume ...

  7. Jenkins+svn+maven自动部署到tomcat

    jenkins所在主机配置好,jdk,maven,Tomcat 1.配置maven,jdk环境 1) 进入配置界面--->[系统管理]--->[Global Tool Configurat ...

  8. Jenkins 集成Maven打包SpringBoot项目并自动部署到Tomcat服务器

    提前条件: 1.在Jenkins服务器上安装Git.JDK和Maven 2.准备另一台服务器并安装Tomcat 3.Gitlab服务器 4.Gitlab仓库中上传SpringBoot项目代码 第一步, ...

  9. 利用Ant脚本生成war包的详细步骤

    使用ant脚本前的准备 1.下载一个ant安装包.如:apache-ant-1.8.4-bin.zip.解压到E盘. 2.配置环境变量.新增ANT_HOME:E:\apache-ant-1.8.4:P ...

随机推荐

  1. java常用类-StringBuffer,Integer,Character

    * StringBuffer: * 线程安全的可变字符串. * * StringBuffer和String的区别? * 前者长度和内容可变,后者不可变. * 如果使用前者做字符串的拼接,不会浪费太多的 ...

  2. bzoj 4591 超能粒子炮·改 - Lucas

    Description 曾经发明了脑洞治疗仪&超能粒子炮的发明家SHTSC又公开了他的新发明:超能粒子炮·改--一种可以发射威力更加 强大的粒子流的神秘装置.超能粒子炮·改相比超能粒子炮,在威 ...

  3. 盒子总结,文本属性操作,reset操作,高级选择器,高级选择器优先级,边界圆角(了解),a标签的四大伪类,背景图片操作,背景图片之精灵图

    盒子总结 ''' block: 设置宽高 1.没有设置宽,宽自适应父级的宽(子级的border+padding+width=父级的width) 2.没有设置高,高由内容撑开 设置了宽高 一定采用设置的 ...

  4. topcoder srm 708 div1 -3

    1.定义一个字符串s,定义函数$f(s)=\sum_{i=1}^{i<|s|}[s_{i-1}\neq s_{i}]$,给定字符串$p,q$,定义函数$g(p,q)=\sum_{c='a'}^{ ...

  5. 求最大流dinic算法模板

    //最短增广路,Dinic算法 struct Edge { int from,to,cap,flow; };//弧度 void AddEdge(int from,int to,int cap) //增 ...

  6. RPMB分区介绍【转】

    本文转载自:https://blog.csdn.net/xiezhi123456/article/details/81479793 RPMB(Replay Protected Memory Block ...

  7. 真心觉得没有必要使用dock和kde桌面

    在安装了, 并使用cairo-dock后, 如果不使用 cairo-dock(fallback mode) 或不启用硬件加速, 将导致 cpu的使用率一直是100%, 而且风扇响的太厉害. 说明doc ...

  8. C# winform combobox默认选中项方法

    https://blog.csdn.net/easyboot/article/details/68062196 可以使用 Combobox.SelectText = “默认选中文本”; 但是如果Com ...

  9. Unity3D学习笔记(三十):Lua

    Lua:是一个轻量级的脚本语句.不需要编译,直接运行的语言.   环境配置:   执行Lua有两种方式: 1.交互式编程(输入后能立即看到效果) 2.脚本式编程:运行lua文件,.lua为文件后缀   ...

  10. Jquery Validate 相关参数

    Jquery Validate 相关参数 //定义中文消息 var cnmsg = { required: “必选字段”, remote: “请修正该字段”, email: “请输入正确格式的电子邮件 ...