五、Integrate工具 & 实现基础CI/CD

系列文章目录

一、DevOps介绍
二、Code阶段工具
三、Build阶段工具
四、Operate阶段工具
五、Integrate工具



前言

持续集成、持续部署的工具很多,其中Jenkins是一个开源的持续集成平台。
Jenkins涉及到将编写完毕的代码发布到测试环境和生产环境的任务,并且还涉及到了构建项目等任务。
Jenkins需要大量的插件保证工作,安装成本较高,下面会基于Docker搭建Jenkins。


1、Jenkins介绍

Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具。
Jenkins应用广泛,大多数互联网公司都采用Jenkins配合GitLab、Docker、K8s作为实现DevOps的核心工具。
Jenkins最强大的就在于插件,Jenkins官方提供了大量的插件库,来自动化CI/CD过程中的各种琐碎功能。
在这里插入图片描述

CI/CD可以理解为:

  • CI过程即是通过Jenkins将代码拉取、构建、制作镜像交给测试人员测试。
  • 持续集成:让软件代码可以持续的集成到主干上,并自动构建和测试。

CD过程即是通过Jenkins将打好标签的发行版本代码拉取、构建、制作镜像交给运维人员部署。

  • 持续交付:让经过持续集成的代码可以进行手动部署。
  • 持续部署:让可以持续交付的代码随时随地的自动化部署。

2、Jenkins安装

  • 拉取Jenkins镜像

    docker pull jenkins/jenkins:lts-jdk21
    
  • 编写docker-compose.yml

    version: "3.1"
    services:
      jenkins:
        image: jenkins/jenkins:lts-jdk21
        container_name: jenkins
        ports:
          - 8080:8080
          - 50000:50000
        volumes:
          - ./data/:/var/jenkins_home/
    
  • 将docker-compose.yml放到/usr/local/docker/jenkins_docker 文件夹下,docker/jenkins_docker是我新建的文件夹。

    cd /usr/local
    mkdir -p docker/jenkins_docker
    cd docker/jenkins_docker/
    
  • 在jenkins_docker文件夹下创建data文件夹,并附上读写权限

    mkdir data
    chmod -R a+w data/
    
  • 启动Jenkins

    cd /usr/local/docker/jenkins_docker
    docker compose up -d 
    
  • 启动Jenkins容器后,由于Jenkins需要下载大量内容,但是由于默认下载地址下载速度较慢, 需要重新设置下载地址为国内镜像站。

    # 修改数据卷中的hudson.model.UpdateCenter.xml文件
    <?xml version='1.1' encoding='UTF-8'?> <sites>
    	<site>
    		<id>default</id>
    		<url>https://updates.jenkins.io/update-center.json</url>
    	</site> 
    </sites>
    
    
    
    # 将下载地址替换为http://mirror.esuni.jp/jenkins/updates/update-center.json
    <?xml version='1.1' encoding='UTF-8'?>
    <sites>
    	<site>
    		<id>default</id>
    		<url>http://mirror.esuni.jp/jenkins/updates/update-center.json</url>
    	</site>
    </sites>
    
    # 清华大学的插件源也可以
    https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
    
  • 再次重启Jenkins容器,访问Jenkins(需要稍微等会)

    # 重启Jenkins
    docker compose restart
    

    在这里插入图片描述

  • 查看密码登录Jenkins,并登录下载插件

    docker exec -it jenkins cat /var/jenkins_home/secrets/initialAdminPassword
    

    在这里插入图片描述

  • 创建管理员用户
    在这里插入图片描述

  • 实例配置
    在这里插入图片描述

  • 安装必要插件

    1. Git Parameter
    2. Publish Over SSH
      在这里插入图片描述在这里插入图片描述
      在这里插入图片描述

3、Jenkins入门配置

1、配置JDK和Maven

1.将JDK和Maven移动到Jenkins的挂载目录下/usr/local/docker/jenkins_docker

cd /usr/local/
mv jdk21/  docker/jenkins_docker/data/
mv maven/  docker/jenkins_docker/data/

2、创建SpringBoot项目,并提交到GitLab。

1、创建SpringBoot项目

在这里插入图片描述

2、编写Dockerfile和docker-compose.yml文件

在这里插入图片描述

3、将代码提交到GitLab

 git init 
 git add .
 git commit -m "初次提交"
 git remote add origin http://101.126.17.78:8929/root/mytest.git
 git branch -M main
 git push -uf origin main

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、Jenkins配置Publish over SSH

在这里插入图片描述

在这里插入图片描述

  • Remote Directory这里的参数是推送脚本或者文件的文件夹
    我这里是新建了一个test的目录
    在这里插入图片描述

4、Jenkins全局配置JDK、Maven

1、配置JDK21

  • 添加JDK
    在这里插入图片描述
/var/jenkins_home/jdk21

2、配置Maven

在这里插入图片描述

/var/jenkins_home/maven

5、新建任务及配置

  • 新建任务
    在这里插入图片描述
  • 配置GitLab,拉取代码
    在这里插入图片描述- 配置Maven,拉取代码进行打包。
    在这里插入图片描述
    在这里插入图片描述
clean package -DskipTests
  • 配置SSH,将打包好的jar包推送到指定服务器,并且执行脚本启动项目
    在这里插入图片描述
    在这里插入图片描述
target/*.jar docker/*
cd /usr/local/test/docker
mv ../target/*.jar ./
docker compose down
docker compose up -d --build
docker image prune -f

6、构建项目

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 15
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
wcs_integrate-main是一个用于整合云服务的主要功能。它是一个集成云服务的平台,允许用户通过一个统一的接口来管理并使用各种云服务。它为用户提供了一个集中管理和监控云服务的界面,使其更加方便地使用和控制不同的云服务。 wcs_integrate-main的主要特点包括以下几个方面。首先,它支持多种云服务的整合,包括云存储、云计算、云数据库等等。用户只需要在wcs_integrate-main中配置好相应的云服务账号和API密钥,就可以方便地进行云服务的管理和使用。 其次,wcs_integrate-main提供了丰富的功能和工具,帮助用户更好地管理云服务。它可以对云服务进行监控和诊断,提供实时的指标和警报,帮助用户快速发现和解决云服务的问题。同时,它还提供了自动化工具,帮助用户自动化地管理和部署云服务,提高工作效率。 此外,wcs_integrate-main还支持用户自定义功能和扩展。用户可以根据自己的需求,通过编写插件或脚本来扩展wcs_integrate-main的功能,满足个性化的需求。 总之,wcs_integrate-main是一个功能强大的云服务整合平台,它帮助用户集中管理和使用不同的云服务,提供了丰富的功能和工具,方便用户监控、诊断和自动化管理云服务,并且支持用户自定义扩展。通过wcs_integrate-main,用户可以更好地利用云服务,提高工作效率和资源利用率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值