【Devops-Jenkins自动将Java Maven工程编译成jar、并打成Docker镜像,并上传Harbor】

目录

【Devops-Jenkins自动将Java Maven工程编译成jar、并打成Docker镜像,并上传Harbor】

本文主要是针对基于RancherServer搭建的Kubernets集群中,实现将Java Maven工程通过Jenkins平台进行编译后打包成Docker镜像,并自动上传至私有Harbor服务器,最后部署至RancherServer的Kubernets集群中。

一、环境准备

1、软件准备

序号 环境名称 说明 版本号
1 Rancher Server k8s运维平台 v2.5.7
2 Harbor Docker私有仓库Harbor服务搭建 v2.3.5-239680cd
3 GitLab 源码版本管理服务器

2、环境规划

序号 IP HostName 操作系统 K8s角色 说明
1 192.168.255.140 harbor Anolis OS 8.9 x86 64位 Rancher服务 Docker私有仓库Harbor服务
2 192.168.255.141 rancher Anolis OS 8.9 x86 64位 Rancher服务 Kubernetes 管理平台
3 192.168.255.142 master Anolis OS 8.9 x86 64位 控制节点 Kubernetes Master
4 192.168.255.143 worker01 Anolis OS 8.9 x86 64位 工作节点 Kubernetes Master高可用节点,如果不需要高可用,可不部署此服务器
5 192.168.255.144 worker02 Anolis OS 8.9 x86 64位 工作节点 Kubernetes Worker
6 192.168.0.245 jenkins Anolis OS 8.9 x86 64位 工作节点 Jenkins编译服务

二、Jenkins准备工作

本文主要演示将java maven工程编译成jar并自动打成Docker镜像,所以需要Jenkins平台安装Docker插件

1、安装Docker插件



2、配置Docker服务

开启Docker服务的2375端口


重点:在Kubernets集群所有节点上都要执行,否则会拉取失败

上传前需先修改docker.service中的配置,

  • 1、需配置私有Harbor服务器的地址
    --insecure-registry 192.168.255.140
  • 2、启动本地docker的远程服务端口
    -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
shell 复制代码
[root@daima ~]# vim /lib/systemd/system/docker.service
# 修改ExecStart参数,在参数中添加如下配置
#ExecStart=/usr/bin/dockerd  --insecure-registry 192.168.255.140 -H fd:// --containerd=/run/containerd/containerd.sock  -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
 
# 重新加载系统服务配置并启动Docker服务
[root@daima ~]# systemctl daemon-reload
[root@daima ~]# systemctl start docker

3、在Jenkins创建Harbor云服务

1)、进入云服务管理画面

系统管理->Clouds

2)、创建Harbor云服务

三、创建Jenkins项目

1、新建项目


2、配置项目

1)、总体配置如下图所示

2)、基本配置

只需填写描述信息即可

3)、源码配置

3)、构建配置

4)、Docker镜像编译、推送Harbor私服配置


3、构建项目


4、验证构建结果

出现如上图所示的就表示构建成功,按上图显示 2025年10月20日 下午12:01构建完成,查看Harbor私服的上传时间

如上图所示,已将jvs-auth镜像上传至Harbor私服

四、部署jvs-auth服务




结束,以上就是通过Jenkins平台进行编译后打包成Docker镜像,并自动上传至私有Harbor服务器,最后部署至RancherServer的Kubernets集群中的全部内容。

相关推荐
ascarl20109 小时前
记录一下es节点掉线后修复好了的情况
运维·jenkins
tg-zm8899969 小时前
2025返利商城源码/挂机自动收益可二开多语言/自定义返利比例/三级分销理财商城
java·mysql·php·laravel·1024程序员节
X***C8629 小时前
SpringBoot:几种常用的接口日期格式化方法
java·spring boot·后端
前端达人10 小时前
你的App消息推送为什么石沉大海?看Service Worker源码我终于懂了
java·开发语言
小光学长10 小时前
基于ssm的宠物交易系统的设计与实现850mb48h(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
java·前端·数据库
编程大师哥10 小时前
vxe-table 透视表分组汇总及排序基础配置
java
8***848210 小时前
spring security 超详细使用教程(接入springboot、前后端分离)
java·spring boot·spring
9***J62810 小时前
Spring Boot项目集成Redisson 原始依赖与 Spring Boot Starter 的流程
java·spring boot·后端
M***Z21010 小时前
SQL 建表语句详解
java·数据库·sql
v***79410 小时前
Spring Boot 热部署
java·spring boot·后端