DevOps搭建(十二)-Jenkins推送镜像到Harbor详解

news/2024/7/24 13:32:15 标签: devops, jenkins, 运维, harbor

什么是Harbor?Harbor 是一个开源的企业级容器镜像仓库,它提供了安全、可靠、高效的镜像管理和分发功能。 Harbor 支持 Docker 镜像和 Helm Chart,可以与其他云原生工具和平台集成,如 Kubernetes、Docker Swarm 等。
使用 Harbor,用户可以存储、管理和共享自己的容器镜像,同时也可以从公共镜像仓库中获取镜像。Harbor 提供了丰富的安全功能,包括用户认证、角色授权、镜像扫描等,以确保镜像的安全性和可靠性。
总的来说,Harbor 是一个功能强大、易于使用的容器镜像仓库,适用于企业级应用和大规模容器部署。

1、配置打镜像脚本

1.1、移动jar包到docker目录

在maven打包生成jar包之后,我们首先需要把jar包放到docker目录下和Dockerfile放一起才能打镜像,如下语句移动jar包:

mv target/*.jar docker/

1.2、执行打镜像操作

接着使用docker命令打镜像

docker build -t devops-test:$tag docker/

其中,$tag为Jenkins上面定义的标签。

注:因为执行的脚本默认不是在docker目录下运行的,因此需要指定docker路径,docker/

也可以cd docker/后再直接执行docker build -t devops-test:$tag .注意最后有个英文的点号。

图片

1.3、测试打镜像

执行Jenkins构建测试下,打印如下日志,证明Docker在Jenkins容器内打镜像成功。

图片

2、推送镜像到Harbor仓库

镜像打好了,那要推送到Harbor仓库中,首先要登录Harbor,然后按照指定规则重命名镜像名称,最后执行推送操作。

2.1、登录Harbor

docker login -u admin -p Harbor12345 192.168.88.125:80

2.2、修改镜像名称

docker tag devops-test:$tag 192.168.88.125:80/repo/devops-test:$tag

2.3、推送镜像

docker push 192.168.88.125:80/repo/devops-test:$tag

结合步骤1完整的脚本如下:

mv target/*.jar docker/
docker build -t devops-test:$tag docker/
docker login -u admin -p Harbor12345 192.168.88.125:80
docker tag devops-test:$tag 192.168.88.125:80/repo/devops-test:$tag
docker push 192.168.88.125:80/repo/devops-test:$tag

2.3、Jenkins构建

构建完成之后,看日志已经成功推送。

图片

2.4、查看Harbor仓库的镜像

打开Harbor仓库管理列表,发现我们的镜像已经推送成功。

图片


http://www.niftyadmin.cn/n/5308166.html

相关文章

VLM,LLM等大模型如何应用于机器人控制(以强化学习为例)

VLM:视觉语义模型,准确识别图中有什么,处于什么状态,以及不同物体之间的关联。 LLM:语言大模型,可以针对当前的环境,自动生成可执行的任务,或者将人类指令重新分成可执行的子任务。…

深度学习中的知识蒸馏

一.概念 知识蒸馏(Knowledge Distillation)是一种深度学习中的模型压缩技术,旨在通过从一个教师模型(teacher model)向一个学生模型(student model)传递知识来减小模型的规模,同时保…

优化|流形优化系列(一)

简介 流形优化是非线性优化的一个分支,它主要关注在特定的几何结构下进行优化。在流形优化中,优化问题通常是在黎曼流形上进行的,而非欧几里得空间。黎曼流形是带有黎曼度量的流形,该度量为流形上的每个点都定义了一个内积。这种…

Ubuntu同步两个剪切板

众所周知,ubuntu系统中有两套剪切板。第一个剪切板是用鼠标操作,鼠标选中则复制,点击鼠标中键则粘贴(这个剪切板通常叫做——选择缓冲区)。第二个剪切板则是真正的剪切板,使用ctrlc(在终端中默认…

Linux操作系统基础(13):文件管理-文件目录命令

1. 文件操作 1.1. 创建文件和目录 touch命令用于创建新的空文件或更新现有文件的时间戳。 #1.创建一个test.txt文件 touch test.txt#2.创建多个文件(test1.txt、test2.txt、test3.txt) touch test{1..3}.txtmkdir命令用于创建一个新的目录&#xff08…

wordpress在界面将站点地址直接修改为https导致上不去问题的解决办法

wordpress在界面将站点地址直接修改为https导致上不去问题的解决办法 #修改数据库yz_options

还有谁 last

文章目录 还有谁 last语法一般使用方法查看最近登陆的三个用户省略hostname显示最后一列显示主机IP地址更多信息 还有谁 last Linux last 命令用于显示用户最近的登录信息。 官方定义为: last, lastb - show listing of last logged in users 通过读取/var/log/wt…

Java的二进制数据处理

在Java中,可以使用二进制运算来处理整数类型数据。 二进制基础知识 二进制(binary)在数学和数字电路中指以2为基数,由0和1组成的数字系统。 位运算符 位运算符是对二进制数进行操作的特殊运算符。在Java中,有以下几…