• jenkins安装和配置(二):配置第一个项目


    一、部署说明

    将git clone代码到本地,用maven编译,打包成jar包,利用Dockerfile构建镜像的这一过程在jenkins上参数化,脚本化

    二、安装maven环境

    管理jenkins-->全局工具配置-->Maven选项-->新增maven-->选择版本,勾选自动安装-->点击保存
    那这些在什么时候才真正的安装了呢?
    是在初次使用到JDK或Maven的时候,才会去自动安装。
    实践,并没有自动安装
    ubuntu20.04手动安装maven
    apt update
    apt install -y maven 会自动设置全局变量,安装jenkins的时候安装过JDK了

    1. root@cn-office-tonytest-jenkins:~# mvn -v
    2. Apache Maven 3.6.3
    3. Maven home: /usr/share/maven

    本地Maven使用私服

    安装和配置好之后,在开发中如何使用呢。可在maven的默认配置settings.xml中修改。

    发布自己的jar到私服

    如果要发布自己的jar到私服,就需要修改工程的pom.xml,添加如下内容:

    1. <distributionManagement>
    2. <repository>
    3. <id>releasesid>
    4. <name>Releasesname>
    5. <url>http://192.168.60.231:8081/repository/maven-releases/url>
    6. repository>
    7. <snapshotRepository>
    8. <id>snapshotsid>
    9. <name>Snapshotname>
    10. <url>http://192.168.60.231:8081/repository/maven-snapshots/url>
    11. snapshotRepository>
    12. distributionManagement>

    同时
    拷贝/usr/share/maven/conf/settings.xml到/var/lib/jenkins/.m2/这个目录下,并添加nexus的用户名和密码

    1. <servers>
    2. <server>
    3. <id>maven-proxyid>
    4. <username>nexususername>
    5. <password>Nginx801password>
    6. server>
    7. <server>
    8. <id>leanwork-thirdpartyid>
    9. <username>nexususername>
    10. <password>Nginx801password>
    11. server>
    12. <server>
    13. <id>nexus-releaseid>
    14. <username>nexususername>
    15. <password>Nginx801password>
    16. server>
    17. <server>
    18. <id>nexus-snapshotid>
    19. <username>nexususername>
    20. <password>Nginx801password>
    21. server>
    22. servers>

    注意上面的repository的id值一定要跟settings.xml文件中配置的server一致。

    三、jenkins配置第一个JAVA项目

    安装插件Git Parameter

    第一个构建的项目是java后台项目,选择"构建一个自由风格的软件项目",比较灵活.

    1. 常规-->勾选"丢弃旧的项目"。自定义"保持构建的天数"和"保持构建的最大个数"

    2. 常规-->勾选"参数化构建过程"。

    添加一个'字符参数',名称'BRANCH'默认值'origin/master'。手动填入分支或标签,值传给$BRANCH

    或者

    添加一个'git参数',名称'BRANCH'默认值'origin/master'。显示分支或标签,默认origin/master,值传给$BRANCH

    一个手动填写,一个直接鼠标选择
    crm-all.git是一个聚合git,内部包含十几个微服务,除了选择好分支外,构建对应服务还需要填写具体名字,因此需要用到'Extended Choice Parameter',在插件中心安装'Extended Choice Parameter Plug-In'

    添加一个'Extended Choice Parameter'-->名称MODULE_NAME-->Basic Parameter Types-->Parameter Type-->check boxes-->Number of Visible Items-->Delimiter-->Choose Source for Value(这里面的值是给check boxes用的,也就是列出了crm-all里面所有的微服务,发布的时候点击勾选具体微服务名字就行了)

    添加一个 '布尔值参数',名称DEPLOY_DEV。效果:勾选就给出true这个值,不勾选就给出false这个值

    添加一个 '布尔值参数',名称BUILD_IMAGE。效果:勾选就给出true这个值,不勾选就给出false这个值

    3. 源码管理-->勾选'Git'. 第一次配置的时候需要授权,参考前面的jenkins安装和配置

    填写Repository URL-->git@gitlab.51sw.cc:bw/crm-all.git
    填写Branches to build-->$BRANCH(来自git参数或字符参数)

    4. 构建环境-->勾选Delete workspace before build starts

    5. 构建

    增加构建步骤-->执行shell-->填写

    'bash /var/lib/jenkins/workspace/jenkins-deploy/crm-all.sh 1.0.$BUILD_NUMBER crm-all ${DEPLOY_DEV} ${BUILD_IMAGE}'
    $BUILD_NUMBER取值是构建历史中第几次构建
    ${DEPLOY_DEV}前面配置的布尔值的值
    ${BUILD_IMAGE}前面配置的布尔值的值
    crm-all.sh 将git clone代码到本地,用maven编译,打包成jar包,利用Dockerfile构建镜像的这一过程编写shell脚本

  • 相关阅读:
    分布式技术之dubbo二
    Rabbitmq 简单介绍
    简述Servlet的生命周期
    【OS】操作系统课程笔记 第四章 中断和处理机调度
    js中数组的方法
    【MTU】Windows/Linux下修改MTU
    如何在CentOS部署JumpServer堡垒机并实现无公网ip环境远程访问
    MySQL基本语句
    HTML+CSS+JS网页设计期末课程大作业——上海旅游景点(10页)web前端开发技术 web课程设计 网页规划与设计
    深入浅出Django的MTV架构
  • 原文地址:https://blog.csdn.net/qq_43538925/article/details/126252975