Jenkins配置

  • 服务器地址: 172.16.8.6:8080
    登录页面:
  1. 点击新建任务


  2. 创建任务
  • 输入任务名称
    任务名称采用正则表达式\w{1,15}-(java|web|php|app|android|ios|apple|vue|ant)(-\w{0,15})?
    示例:uap-web,uap-java-config
  • 复制模板
    输入temp从模板列表中选择,或者选择其他已有的项目
    最后点击创建即可


  1. 配置源码地址Gitlab :172.16.26.120
  • 打开Gitlab上的项目,确认Jenkins用户已经加入到项目中,拥有拉取代码权限

  • 选择SSH协议,复制项目地址,如下图


    image.png
  • 在Jenkins项目上添加代码仓库路径

  • 点击源码管理

  • 从gitlab上复制项目ssh地址链接粘贴到RepositoryURL中

  • 在Branch Specifier (blank for 'any') 填入分支名,如下图为master分支


  1. 构建触发器
  • 选择Jenkins项目中 “构建触发器” 选项卡

  • 勾选Build when a change is pushed to GitLab. 并复制GitLab webhook URL,如下图


    image.png
  • 打开Gitlab上项目地址,选择“设置”(需要有对应权限才可以该选项)下“集成”选项卡,在“链接(URL)”文本框中填入Jenkins上对应的web钩子url,勾选触发事件,如图勾选push事件,点击“增加web钩子”即可,如下图


    image.png
  1. 构建环境
  • 在Jenkins上选择构建选项卡,点击“增加构建步骤”,选择对应的工具构建即可,
    示例:构建java maven项目,选择maven项目填入对应maven命令



    示例:构建前端npm 项目,选择执行shell,填入对应命令即可


  1. 发布编译后项目文件
  • 该Jenkins服务器只用于项目编译,项目运行需要将编译后文件传送到对应服务器发布运行,对于已经打包的java项目和web项目,已经编写两个脚本runweb /usr/local/bin/runweb,runjar /usr/local/bin/runjar

  • /usr/local/bin/runjar
    该脚本用于将springboot项目打包后的jar包通过scp传送到对应服务器,运行发布
    选项

    • -a :在指定机器执行命令(脚本内已经指定172.16.8.20为默认远程机器) eg: runjar -a “ls /tmp” 即在远程机器执行 ls /tmp命令,该命令将忽略除了-h -u -P以外的其他选项
    • -h :指定远程的服务器,eg:runjar -h 172.16.8.18 -a "ls /tmp" 即在172.16.8.18 机器执行 ls /tmp命令
    • -u :指定ssh远程用户默认采取root用户,eg:runjar -u admin -a "ls"
    • -P :指定ssh远程端口,默认采用22端口
    • -f :指定jar 包地址,忽略-m选项自动查找jar包,-m选项与-f同时出现会覆盖选项功能,写在后面选项将覆盖前面选项
    • -p :指定spring boot 运行的jar包端口,即组成-Dserver.port= 选项,eg:runjar -p 8888 -f /opt/test.jar 即组成命令java命令为java -jar /opt/test.jar -Dserver.port=8888
    • -d :指定spring 运行配置文件 即组成-Dspring.profiles.active= 选项
      eg:使用测试环境配置 runjar -f /opt/test.jar -d test
    • -m :指定java项目中的模块文件夹名称,该选项将自动查找该模块文件夹下的第一个查找到的jar包,作为运行的jar
    • -j :用于指定其他JAVA_OPTS,扩展java程序运行命令,eg:runjar -m web -j "-Xms800m -Xmx800m" 对于上面选项不支持配置jar包运行内存参数,即可通过-j 命令增加
      示例:通过jenkins控制台输出可查看运行日志,脚本运行日志如下:
  • /usr/local/bin/runweb
    该脚本用于将web前端编译后的文件传送发布到对应web服务器上
    • -a :在指定机器执行命令(脚本内已经指定172.16.8.20为默认远程机器) eg: runweb -a “ls /tmp” 即在远程机器执行 ls /tmp命令,该命令将忽略除了-h -u -P以外的其他选项
    • -h :指定远程的服务器,eg:runweb -h 172.16.8.18 -a "ls /tmp" 即在172.16.8.18 机器执行 ls /tmp命令
    • -u :指定ssh远程用户默认采取root用户,eg:runweb -u admin -a "ls"
    • -P :指定ssh远程端口,默认采用22端口
    • -m :远程备份文件夹名称,runweb脚本会将之前项目文件进行备份到/tmp/{模块名}/日期目录下,默认名称使用Jenkins项目名称
    • -f :指定远程服务器存放web项目文件目录
    • -l :指定本地服务器存放web项目文件目录,相对路径(项目根目录),或绝对路径
      示例:通过jenkins控制台输出可查看运行日志,脚本运行日志如下:


你可能感兴趣的:(Jenkins配置)