当前位置: 首页 > article >正文

【Jenkins流水线搭建】

Jenkins流水线搭建

  • 01、SpringBoot项目 - Jenkins基于Jar持续集成搭建文档
    • 基于手动方式发布项目
    • 基于dockerfile
    • 基于jenkins + dockerfile + jenkinsfile +pieline
    • 基于jenkins + jar方式的发布
    • 01、环境说明
    • 01、准备项目
    • 02、准备服务器
    • 03、安装git
    • 04、安装jdk1.8
    • 05、安装maven依赖
    • 06、安装jenkins
    • 07、启动jenkins
    • 08、解锁 Jenkins
    • 09、自定义Jenkins
    • 10、创建管理员账号
    • 11、实例配置
    • 12、Jenkins控制面板
    • 13、配置镜像源
    • 14、Jenkins插件安装
      • 1、jekins汉化插件安装
      • 2、安装Credentials Binding插件
      • 3、git插件安装
    • 15、配置凭据 - 全局Git账号和密码管理
    • 16、配置环境变量
      • 配置jdk
      • 配置Maven
    • 17、Jenkins关联环境变量和设置常量
  • 02、基于Jenkins的jar的方式发布和部署
    • 01、准备项目
    • 02、创建代码仓库
    • 03、项目关联仓库
    • 04、在jenkins创建一个任务
    • 05、编写shell脚本和jenkins关联执行
    • 06、开始构建即可
    • 代码
  • 02、基于Jenkins的docker的方式发布和部署
    • 01、Pipeline插件安装
    • 02、利用Pipeline自动化发布服务
      • 1、点击新建任务,填写项目名称,选择流水线,点击确认
      • 2、开始构建
      • 3、配置端口映射
      • 4、配置项目名称
      • 5、该有的参数都已经准备完毕,接下来要做的就是拉取代码
      • 6、项目配置好以后
    • 03、创建Jenkinsfile
    • 04、然后在jenkins的控制台中

01、SpringBoot项目 - Jenkins基于Jar持续集成搭建文档

基于手动方式发布项目

  • 开发代码

  • 打包-jar

  • 把jar上传到服务器

  • 把上一次的服务杀掉,停止

  • 启动运行新的jar

基于dockerfile

  • 开发代码

  • 编写Dockerfile (一次性)

  • mvn clean package 自动生成镜像

  • 手动或者使用idea Docker插件,创建容器,启动容器

    学习成本:Docker

基于jenkins + dockerfile + jenkinsfile +pieline

  • 开发代码
  • 搭建jenkins环境 (一次性)
  • 编写Dockerfile (一次性) 和Jenkinsfile规则(一次性)
  • 上传代码
  • jenkins控制台启动服务 (触发器)

学习成本:Docker ,Jenkins ,Pieline 触发器

基于jenkins + jar方式的发布

  • 开发代码

  • 搭建jenkins环境 (一次性)

  • 创建一个任务 ,创建shell脚本

  • 上传代码

  • jenkins控制台启动服务 (触发器)

01、环境说明

服务 所需软件 部署地址
持续集成服务 Jenkins 2.319.1、Maven3.6.3,Git 47.107.225.126
应用测试服务 JDK1.8 47.107.225.126

01、准备项目

准备一个springboot + Dockerfile项目

02、准备服务器

服务器配置建议:4core + 8G 或者 4core + 16G 越高越好。

提醒:学生机就不要来试了,估计docker都跑不起来就卡死了

03、安装git

查看是否已经安装
git --version
使用yml安装
yum -y install git

image-20220111150549668

04、安装jdk1.8

查看当前是否有安装jdk

  • maven和项目,jekenis都java项目肯定需要java环境
java -version

安装jdk1.8

yum install java-1.8.0-openjdk* -y
  • 安装完以后,默认的路径是: /usr/lib/jvm
  • 提醒:建议不要安装jdk11。

05、安装maven依赖

  • 1、前往官网下载自己想要的maven包

    地址: http://maven.apache.org/download.cgi

    各版本地址:https://archive.apache.org/dist/maven/maven-3/

    我以apache-maven-3.6.3-bin.tar.gz为例,

    下载地址: https://archive.apache.org/dist/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz

  • 2、将maven上传liunx服务器上,我这里上传到了/www/servers,当前的安装目录root如下:cd /www/servers

    mkdir -p /www/servers/maven
    cd /www/servers/maven
    
  • 3、上传完毕,执行解压

    wget https://archive.apache.org/dist/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
    

    如果下载很慢建议用手动的方式上传到/www/servers/maven

    #解压文件
    tar -xzvf apache-maven-3.6.3-bin.tar.gz
    #创建目录,用于存放maven
    mkdir -p /opt/maven
    #将解压完的maven文件剪切到刚刚创建的目录下
    mv apache-maven-3.6.3/* /opt/maven 
    

    image-20220111151351229

    建议配置:阿里云的maven镜像。https://developer.aliyun.com/mvn/guide 步骤:在conf/setttings.xml中配置如下:

    <mirror>
        <id>aliyunmaven</id>
        <mirrorOf>*</mirrorOf>
        <name>aliyunrepositoty</name>
        <url>https://maven.aliyun.com/repository/public</url>
    </mirror>
    

    image-20220111233516650

  • 4、配置maven环境变量
    安装完maven,还需要配置java和maven的环境变量。就放在文件的尾部即可

    首先打开环境配置文件

    vim /etc/profile
    

    配置内容

    export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk 
    export MAVEN_HOME=/opt/maven 
    export PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin
    

    执行保存生效

    source /etc/profile 
    

    查看maven版本

    mvn -v 
    
    [root@iZwz9gi039o35ikykbyj1tZ maven]# mvn -v
    Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
    Maven home: /opt/maven
    Java version: 1.8.0_312, vendor: Red Hat, Inc., runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-1.el7_9.x86_64/jre
    Default locale: zh_CN, platform encoding: UTF-8
    OS name: "linux", version: "3.10.0-1160.49.1.el7.x86_64", arch: "amd64", family: "unix"
    

06、安装jenkins

1、官网地址

https://www.jenkins.io/download/


http://www.kler.cn/a/547038.html

相关文章:

  • LLaMA-Factory 安装linux部署使用conda笔记
  • 安科瑞 EMS3.0:赋能企业能效管理,开启智慧能源新时代
  • TIP2022 | DRA | 从分布的角度理解和提升对抗性迁移性
  • 词袋模型和词嵌入模型区别和关联分析(词袋模型是否属于词嵌入模型)
  • 强化学习-DDPG
  • 希尔排序(C#)
  • MySQL 支持的事务隔离级别
  • 对比 LVS 负载均衡群集的 NAT 模式和 DR 模式,其各自的优势
  • Jetpack Compose初体验
  • 解决Did not find dashscope_api_key问题——jupyter设置环境变量
  • C++学习 mac上VScode运行C++
  • mars3d接入到uniapp的时候ios上所有地图的瓦片都无法加载解决方案
  • 通过服务器的 BMC(基板管理控制器)安装操作系统
  • AI时代前端开发:创造力的新引擎?
  • 每日Attention学习23——KAN-Block
  • PHP场地预定小程序
  • 清理docker/podman的存储空间
  • 智能光子学——机器学习赋能的光子学器件与系统:从创新设计到前沿应用
  • 【IC】AI处理器核心--第二部分 用于处理 DNN 的硬件设计
  • 初阶c语言(练习题,猜随机数,关机程序)