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仓库管理列表,发现我们的镜像已经推送成功。

图片

相关推荐

  1. DevOps-08-4】Jenkins实现自定义镜像Harbor

    2024-01-03 17:36:04       32 阅读
  2. jenkins 连接harbor 镜像

    2024-01-03 17:36:04       19 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-03 17:36:04       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-03 17:36:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-03 17:36:04       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-03 17:36:04       20 阅读

热门阅读

  1. Jenkinsfile构建

    2024-01-03 17:36:04       39 阅读
  2. 关于数据集的了解

    2024-01-03 17:36:04       39 阅读
  3. 前端工作细节提升总结

    2024-01-03 17:36:04       37 阅读
  4. 搭建golang开发环境

    2024-01-03 17:36:04       45 阅读
  5. 前端面试

    2024-01-03 17:36:04       35 阅读
  6. Python日期和时间详解

    2024-01-03 17:36:04       36 阅读
  7. React Proxy跨域配置(纯代码-可直接拉取使用)

    2024-01-03 17:36:04       39 阅读
  8. FreeRTOS任务通知

    2024-01-03 17:36:04       39 阅读
  9. 有效的APP推广策略:引领用户走向成功

    2024-01-03 17:36:04       43 阅读
  10. Python中的数据分析和数据处理

    2024-01-03 17:36:04       43 阅读
  11. 15、异常处理

    2024-01-03 17:36:04       32 阅读
  12. C++系列十一:C++指针

    2024-01-03 17:36:04       37 阅读
  13. 后端开发——jdbc的学习(一)

    2024-01-03 17:36:04       40 阅读