3 gogs+jenkins 触发远程构建及tomcat管理war包替换

环境 centos7

一、gogs安装---这里采用git用户,实际我是用root 安装在/usr/local/gogs下的

1、添加用户,设置sudo,查看内核版本信息,确认架构,下载相应的安装包

  useradd git #添加用户

  vim /etc/sudoer

  git    ALL=(ALL)    NOPASSWD:ALL  #添加这行在执行sudo时无需密码

  如不能编辑更改文件只读权限为读写  chmod u+w /etc/sudoer  #改回去 chmod u-w /etc/sudoer

  uname -a  #查看内核架构版本

  wget https://dl.gogs.io/0.11.91/gogs_0.11.91_linux_amd64.tar.gz  #下载对应二进制安装包

2、解压包至git目录, 修改权限及所有者,安装基础环境,启动gogs

  tar -xf gogs_0.11.91_linux_amd64.tar.gz  -C /home/git/

  chmod -R 755 /home/git/gogs

  chown -R git:git /home/git/gogs

  yum -y install git nginx

  su - git -c "cd /home/git/gogs && ./gogs web &"

3、添加启动项

  cp scripts/systemd/gogs.service /etc/systemd/system

  cp scripts/init/centos/gogs /etc/init.d/
  chmod u+x scripts/init/centos/gogs
  chmod u+x scripts/systemd/gogs.service
  ln -sf scripts/systemd/gogs.service /usr/lib/systemd/
  systemctl enable gogs.service
  systemctl status gogs.service
  #如不行 chkconfig gogs on && service gogs restart

  4、设置idea,提交项目代码

  4.1、菜单 VCS ---Enable Version Control Integration---git

    

  4.2、设置远程地址: 右键点击工程选择菜单 Git --> Repository -->Remotes

   4.3、Git add->commit->push,然后刷新gogs页面

二、gogs与jenkins设置

  1、gogs仓库设置和添加jenkins公钥

    1.1 管理帐户登录,点击某个项目,选择仓库设置

    

    1.2 添加web钩子,指定jenkins项目地址,格式:  http(s)://<你的Jenkins地址>/gogs-webhook/?job=<你的Jenkins任务名>

    

    1.3 右上角用户设置--SSH密钥,添加jenkins公钥

    

  2、jenkins安装插件,新建项目及设置git地址和构建,触发器等

    2.1、安装插件,设置环境及新建项目设置仓库地址

    插件:

      Publish Over SSH
      Gogs plugin
      Deploy to container

      Build Authorization Token Root Plugin

    #jenkins ---系统管理---全局工具配置

    

    ###新建一个maven项目,设置git仓库地址,并且使用jenkins本身的私钥进行验证

    

    ####选择对应自己想要的触发器

    

    

  3、tomcat设置管理帐户

    192.168.10.227 tomcat2

    vim /usr/local/tomcat2/conf/tomcat-users.xml

    #添加以下配置

<role rolename="manager"/>
<role rolename="manager-gui"/>
<role rolename="admin"/>
<role rolename="admin-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="admin" password="password" roles="admin-gui,admin,manager-gui,manager,manager-script,manager-jmx,manager-status"/>

    $vim /usr/local/tomcat2/conf/Catalina/localhost

    <Context privileged="true" antiResourceLocking="false"   
           docBase="${catalina.home}/webapps/manager">  
     <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" />  
    </Context>

  4、设置jenkins构建后操作,自动部署war到tomcat

  

三、测试远程触发自动构建war,并且发布

  1、访问 http://192.168.10.79:8080/job/etoppay-cron/build?token=123456 格式参考设置令牌提示

  

  2、可以看到已经自动构建成一个war,一个jar包,并且自动发布

    

    

原文地址:https://www.cnblogs.com/xiefugui/p/12095932.html

时间: 2024-10-07 10:40:02

3 gogs+jenkins 触发远程构建及tomcat管理war包替换的相关文章

jenkins构建触发器详解-不登录触发远程构建

利用jenkins的远程构建功能,我们可以使用任何脚本,甚至定制一个Web页来控制Job的执行,但是远程构建你如果直接使用的话,老是需要登录才能执行,如何避免登录?稍微折腾了一下,调通了. 1.首先去系统管理->管理插件里边,搜索并安装插件 Build Authorization Token Root Plugin,不会安装插件的先去搜一下,安装好后如下图: 2.然后点击右上角,你登录的用户名,再点击设置,找到API Token,复制下来你这个用户的Token,用于远程访问Job用. 3.找到你

jenkins构建触发器详解-不登录触发远程构建详解

利用jenkins的远程构建功能,我们可以使用任何脚本,甚至定制一个Web页来控制Job的执行,但是远程构建你如果直接使用的话,老是需要登录才能执行,如何避免登录?稍微折腾了一下,调通了. 1.点击右上角,你登录的用户名,再点击设置,找到API Token,复制下来你这个用户的Token,用于远程访问Job用. 2.找到你要触发远程构建的Job,把这个复制的Token粘贴进去,点击保存, 也可以自己设置 3.这样你就可以用如下地址来远程触发这个Job执行了,并且不用登录系统就可以触发 curl

Tomcat 发布war包提示war包超出大小修改

error信息: java.lang.IllegalStateException: org.apache.tomcat.util.http.fileupload.FileUploadBase$SizeLimitExceededException: the request was rejected because its size (55916489) exceeds the configured maximum (52428800)原因:war包超出了上线50MB修改方法:tomcat/weba

Linux tomcat部署War包,Linux在Tomcat部署JavaWeb项目,Linux部署War包

Linux tomcat部署War包,Linux在Tomcat部署JavaWeb项目,Linux部署War包 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ©Copyright 蕃薯耀 2017年3月6日 http://www.cnblogs.com/fanshuyao/ 一.Linux快速部署W

tomcat修改war包路径

在工作中需要更换tomcat的war包路径:< Host >标签: 每一个< Host >可以对应一个域名,多个域名就对应多个Host标签. name 属性代表该虚拟主机对应的域名 appBase 属性代表该虚拟主机对应的 根目录,可写入绝对路径进行自定义.子标签: 1.如果有两个域名同时对应一个目录,可以使用<Alias>...</Alias> 表示别名,将新的域名填入就好. 2.虚拟目录配置需要使用< Context > 标签. path 属

Docker容器Tomcat部署war包

原文:Docker容器Tomcat部署war包 在docker容器中使用tomcat部署war包主要包括四个步骤,创建tomcat容器.上传war包到容器.重启容器.访问应用. 1.创建tomcat容器 使用docker run  -d --name cmdtomcat -p 8080:8080  tomcat命令启动了tomcat容器,在浏览器输入http://localhost:8080/可以显示tomcat配置页面.使用docker ps -a可以看到cmdtomcat的容器. 使用doc

Jenkins触发远程Job的几种方式

本文叙述基于以下假设前提,将介绍三种在不同的jenkins服务器之间触发Job的方法: 本地Jenkins Server local.jenkins.com远程Jenkins Server remote.jenkins.com本地Jenkins Job名 local_job远程Jenkins Job名 remote_job 需求 在local_job完成后自动触发remote_job一.在remote_job上配置Build Trigger:步骤:1.在Jenkins Web GUI上配置rem

zabbix 自动发现tomcat的war包并实现监控

公司有巨量的tomcat服务器,每台机器上面有好几个tomcat, 路径用后缀数字区别, 例如 /usr/local/dir_samba/apache-tomcat-7.0.64-0/webapps 表示8080端口的tomcat 每个tomtcat对应一个端口,每个tomcat都有若干的war包(应用)以下描述用zabbix自动去扫描发现每个tomcat上的war,并自动添加为监控的过程 #!/bin/bash findtomcatwar() { printf '{\n' printf '\t

Ubuntu上Tomcat使用war包

今天软工项目终于告一段落.从Intellij IDEA导出了一个war包,放在windows的tomcat下的webapps目录下,结果发现除了登录界面其他一片狼藉,然后突然反应过来在Idea下的运行环境是不需要配置服务器的,默认的应用根目录就是该项目,所以当时写的时候都是默认的根目录,所以要修改tomcat的默认启动项目 ,在Windows上我直接把项目名改为了ROOT,结果就一切正常了. (war设置了自动解压,所以又生成了一个应用) 但是这并不是一个很好的解决办法,如果有多个应用就不好办了