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版 家政服务 社区服务 家装服务平台 源码 有案例 可定制

    产品说明: 家装服务平台.社区服务平台.服务类型的平台--公司成熟产品 包括工匠注册.资质认证.发布服务产品.会员注册.预约服务.工匠定价.执行服务.服务完毕填写工作日志上传现场照片.会员确认服务.返 ...

  2. python简说(二十一)开发接口

    一.flask举例 import flaskserver = flask.Flask(__name__)#新建一个服务,把当前这个python文件当做一个服务@server.route('/login ...

  3. 复选框批量删除操作-jquery方式

    1.首先在页面添加一个批量删除的按钮:<li class="btns"><input id="deleteSubmit" class=&quo ...

  4. 20155201 网络攻防技术 实验五 MSF基础应用

    20155201 网络攻防技术 实验五 MSF基础应用 一.实践内容 一个主动攻击实践,如ms08_067 一个针对浏览器的攻击,如ms11_050 一个针对客户端的攻击,如Adobe 成功应用任何一 ...

  5. Python中的对象行为与特殊方法(一)对象的创建与销毁

    Python中类调用__new__()类方法来创建实例,调用__init__()方法来初始化对象,对象的销毁则调用__del__()方法. __new__()方法第一个参数为类cls,通常返回cls的 ...

  6. clnt_create: RPC: Program not registered

    原因:[root@nfs nfs]# systemctl start nfs-utils 解决方法:[root@nfs nfs]# systemctl start nfs

  7. topcoder srm 305 div1

    problem1 link 直接按照题意模拟即可. import java.util.*; import java.math.*; import static java.lang.Math.*; pu ...

  8. Bootstrap3基础 form-control 圆角的输入框,光标放入后边框变色

      内容 参数   OS   Windows 10 x64   browser   Firefox 65.0.2   framework     Bootstrap 3.3.7   editor    ...

  9. 89. a^b【快速幂模板】

    a^b Description 求 aa 的 bb 次方对 pp 取模的值. 输入格式 三个整数 a,b,pa,b,p ,在同一行用空格隔开. 输出格式 输出一个整数,表示a^b mod p的值. 数 ...

  10. UVALive 7503 Change(乱搞)题解

    题意:你现在有面额为A的纸币,现在需要面额为B的钱(可以是一张也可以是好多张拼成一张),有一台自动售货机,里面有任意价格的商品,售货机兑换出的零钱是随机的(比如找你0.03可能给你0.01+0.01+ ...