『DevOps最佳实践』使用Jenkins和Harbor进行持续集成和交付的解决方案

这篇具有很好参考价值的文章主要介绍了『DevOps最佳实践』使用Jenkins和Harbor进行持续集成和交付的解决方案。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

『DevOps最佳实践』使用Jenkins和Harbor进行持续集成和交付的解决方案

『DevOps最佳实践』使用Jenkins和Harbor进行持续集成和交付的解决方案
📣读完这篇文章里你能收获到

  • 全文采用图文形式讲解
  • 学会使用Harbor配置项目
  • 学会在Jenkins中配置Harbor推送权限
  • 使用Jenkins和Harbor进行持续集成的实践
  • 感谢点赞+收藏,避免下次找不到~

『DevOps最佳实践』使用Jenkins和Harbor进行持续集成和交付的解决方案

『DevOps最佳实践』使用Jenkins和Harbor进行持续集成和交付的解决方案

在现代软件开发中,自动化部署是提高效率和可靠性的关键。本文将带你深入探索如何使用Jenkins和Harbor实现.NET Core项目的自动化部署。我们将一步步指导如何配置Jenkins、Harbor和Docker环境,以及使用最佳实践来简化部署流程。


一、准备工作

1. 环境准备

  • Docker环境
  • DockerFile文件(需要提前写好DockerFile文件)

2. 修改Docker配置文件

$ vi /etc/docker/daemon.json 

{
  "registry-mirrors": ["https://k728i8z5.mirror.aliyuncs.com"],
  "insecure-registries":["harborip:port"]//添加harbor地址
}
  • 重新启动Docker
systemctl daemon-reload
systemctl restart docker

3. Docker登陆Harbor

docker login harborip:port

# 退出登陆则为:docker logout harborip:port

image.png

#2. 把.docker复制到/var/lib/jenkins目录下
cp -r /root/.docker/ /var/lib/jenkins/

#3. 修改文件夹权限
cd /var/lib/jenkins/
chown -R jenkins.jenkins .docker

4. Harbor项目准备

  • 提前新建一个devops项目

image.png

『DevOps最佳实践』使用Jenkins和Harbor进行持续集成和交付的解决方案

二、配置 Jenkins 任务

1. 构建一个自由风格的软件项目

image.png

2. 选择 Git 并填写你的代码仓库 URL

  • 在 Jenkins 任务配置页面的 “源码管理” 中填写

image.png

3. 参数化构建过程

  1. 勾选参数化构建过程
  2. 添加文本参数

image.png

  1. 分别添加pName、pVersionPrefix、port、IMG

image.png

4. 构建触发器

  1. 在 “构建” 部分,点击 “增加构建步骤” 并选择 “执行Shell”
  2. 在命令框中输入以下命令:
export pVersion=${pVersionPrefix}_${GIT_COMMIT:0:8}_`date +%Y%m%d%H%M`
export container=${IMG}${pName}:${pVersion}

# 到Dockerfile文件所在目录
# cd src

# 使用Docker构建镜像
docker build -t ${container} .

# 推送至Harbor仓库
docker push ${container}

# 检查容器是否存在
if docker inspect --type=container ${pName} >/dev/null 2>&1; then
  # 停止容器
  docker stop ${pName}
  # 删除容器
  docker rm ${pName}
fi

# 运行新的容器
docker run -d -p ${port}:80 --name ${pName} ${container}

『DevOps最佳实践』使用Jenkins和Harbor进行持续集成和交付的解决方案

三、保存并启动 Jenkins 任务

1. 参数化构建任务

  1. 保存 Jenkins 任务配置并返回主页
  2. 点击任务名称进入任务详情页面
  3. 点击 “立即构建"或者"通过参数构建”

Jenkins 将开始监测代码仓库并自动构建和部署 .NET Core 项目

image.png

2. 查看Harbor项目

image.png

『DevOps最佳实践』使用Jenkins和Harbor进行持续集成和交付的解决方案

四、持续集成解决方案

1. 基于 Webhook 的方案

  • 在 Jenkins 项目中实现自动构建,持续集成,点击查看文章

『DevOps最佳实践』使用Jenkins和Harbor进行持续集成和交付的解决方案

五、异常处理

1. Jenkins中Docker Push时没权限

1.1 现象及原因

这是因为jenkins在推送镜像的时候使用的是jenkins的伪用户,那么既然要推送就要登录,那么首先在当前用户生成config.json

unauthorized: unauthorized to access repository: ocp/eureka-server, action: push: unauthorized to access repository: ocp/eureka-server, action: push

1.2 解决方式

#1. 当前用户使用docker login生成config.json
docker login http://ip:port


image.png

#2. 把.docker复制到/var/lib/jenkins目录下
cp -r /root/.docker/ /var/lib/jenkins/

#3. 修改文件夹权限
cd /var/lib/jenkins/
chown -R jenkins.jenkins .docker

『DevOps最佳实践』使用Jenkins和Harbor进行持续集成和交付的解决方案

『DevOps最佳实践』使用Jenkins和Harbor进行持续集成和交付的解决方案文章来源地址https://www.toymoban.com/news/detail-481386.html

到了这里,关于『DevOps最佳实践』使用Jenkins和Harbor进行持续集成和交付的解决方案的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • DevOps持续集成-Jenkins(2)

    DevOps概述 软件开发最初是由两个团队共同组成:(没有采用DevOps之前) 开发团队 :从头开始设计和整体系统的构建(编写代码)。需要系统不停的迭代更新。 运维团队 :将开发团队的代码进行测试通过后再部署上线。确保系统稳定运行。 没有采用DevOps的缺点: 这看似两个

    2024年02月08日
    浏览(54)
  • DevOps-Jenkins-CI持续集成操作

    创建个web项目 我这里直接用Spring Web自动生成的demos 启动项目,访问展示如下默认页面信息 在项目下新建docker目录,新增Dockerfile、docker-compose.yml文件 Dockerfile文件,将mytest.jar 复制到容器的/usr/local/目录下,在/usr/local执行命令java -jar mytest.jar docker-compose.yml文件,当前目录以D

    2024年03月13日
    浏览(54)
  • 【云原生 • DevOps】一文掌握持续集成工具 Jenkins

    目录 一、持续集成工具 Jenkins 介绍 1. 什么是持续集成 2. Jenkins 介绍 二、Jenkins 的安装与部署 1. 安装 Jenkins 2. 本地访问 Jenkins 3. 插件的安装 4. 卸载 Jenkins 三、Jenkins 全局配置 1. Git 的安装与配置 2. JDK 的安装与配置 3. maven 的安装与配置 三、将代码上传至 Git 服务器 1. Gogs 的搭

    2024年02月03日
    浏览(56)
  • SkyEye与Jenkins的DevOps持续集成解决方案

    在技术飞速发展的当下,随着各行各业的软件逻辑复杂程度提升带来的需求变更,传统测试已无法满足与之相对应的一系列测试任务,有必要引入一个自动化、可持续集成构建的DevOps平台来解决此类问题。本文将主要介绍SkyEye与Jenkins的持续集成解决方案。 何谓DevOps?DevOps是

    2024年02月15日
    浏览(46)
  • 软件测试学习笔记丨持续集成DevOps - Jenkins安装

    本文转自测试人社区,原文链接:https://ceshiren.com/t/topic/30028 通过 war 包安装 通过安装包安装(不推荐) 通过 docker 命令安装(推荐 Linux 环境): docker pull jenkins/jenkins:lts 2.1 ,war包启动(用于调试,不推荐安装): (1), 下载war包后, 进入对应的war下载的目录,通过命令启

    2024年04月09日
    浏览(55)
  • docker+k8s+jenkins+harbor持续集成自动化部署

    另外一篇文章有讲docker的安装与相关配置,暂时就不讲了 1、关闭防火墙并修改主机名 2、永久禁用swap 用#注释掉swap一行(新版centos已经默认禁用) 3、配置镜像加速 到阿里云获取自己镜像加速地址 4、安装 docker-compose 官网找到下载地址 https://github.com/docker/compose/releases 版本地址

    2024年02月08日
    浏览(59)
  • (十六)devops持续集成开发——jenkins流水线构建之邮件通知

    本节内容主要介绍jenkins在流水线任务构建完成后的通知操作,使用jenkins的邮件通知插件完成构建任务结束的通知。一般项目发布都会通知相关的责任人,这样项目发布在出现问题时能够及时的处理。 ①在插件中心安装Email Extension邮件通知插件 ②申请一个发送邮件的邮箱服务

    2024年02月21日
    浏览(63)
  • (十九)devops持续集成开发——jenkins的一些常用插件和工具的安装

    本节内容会着重介绍jenkins持续集成开发工具的一些常用插件安装以及全局工具的配置安装,并说明其主要作用。在开始插件和工具安装之前,我们要保证可以正常访问网络,并且使用国内的插件更新地址,便于插件的正常安装。官方的地址可能会导致安装失败。以下是一些可

    2024年04月27日
    浏览(47)
  • Gitlab+Jenkins+Docker+Harbor+K8s集群搭建CICD平台(持续集成部署Hexo博客Demo)

    目录 涉及内容: 一、CICD服务器环境搭建 1、docker 环境安装 (1)、拉取镜像,启动并设置开机自启 (2)、配置docker加速器 2、安装并配置GitLab (1)、创建共享卷目录 (2)、创建 gitlab 容器 (3)、关闭容器修改配置文件 (4)、修改完配置文件之后。直接启动容器 (5)、相关

    2024年03月15日
    浏览(70)
  • Azure DevOps(一)基于 Net6.0 的 WPF 程序如何进行持续集成、持续编译

    我们是否正在为如何快速的编译、部署客户端应用程序而烦恼?这也是博主最近遇到的问题。目前博主所在公司主要做项目级的定制化开发,多以 C/S 架构的 WPF 程序为主,每次到了协助开发团队给实施团队编译好的要测试程序包时,就会出现多人协助,编译、打包好的二进制

    2023年04月19日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包