KubeSphere应用【五】发布镜像至Harbor

一、IDEA发布镜像至Docker

1.1IDEA安装Docker插件

1.2配置Docker服务器地址

1.3编写POM.XML文件

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><!--<version>3.1.6</version>--><version>2.6.3</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>com.csdn</groupId><artifactId>blog</artifactId><name>blog</name><description>Demo project for Spring Boot</description><properties><dadao.version>1.0.0-RELEASE</dadao.version><java.version>1.8</java.version><docker.host>192.168.10.194:2375</docker.host></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><build><finalName>blog-${dadao.version}</finalName><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><image><builder>paketobuildpacks/builder-jammy-base:latest</builder></image><excludes><exclude><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></exclude></excludes></configuration></plugin><plugin><groupId>com.spotify</groupId><artifactId>docker-maven-plugin</artifactId><version>1.2.2</version><executions><execution><id>build-image</id><phase>package</phase><goals><!--如果package时不想用docker打包,就注释掉这个goal--><!--<goal>build</goal>--><!--<goal>push</goal>--></goals></execution></executions><configuration><!-- 远程docker地址 --><dockerHost>${docker.host}</dockerHost><!--镜像名--><imageName>${project.artifactId}</imageName><!--TAG,这里用工程版本号--><imageTags><imageTag>${project.version}</imageTag></imageTags><!--指定Dockerfile路径--><dockerDirectory>${project.basedir}</dockerDirectory><!--suppress UnresolvedMavenProperty --><entryPoint>["java","-Xmx512m", "-Xms256m", "-jar","/${project.build.finalName}.jar","--spring.profiles.active=${profiles.active}"]</entryPoint><resources><resource><targetPath>/</targetPath><directory>${project.build.directory}</directory><include>${project.build.finalName}.jar</include></resource></resources></configuration></plugin></plugins></build></project>

1.4编写Docker配置文件

1.5编写服务

Name:自定义

Dockerfile:选择上一步创建的Dockerfile文件

ImageTag:镜像标签自定义

ContainerName:容器名称自定义

BindPort:前一个是服务器对外暴露端口(访问服务使用),后一个是容器端口。

 1.6上传镜像至Docker

maven package:进行打包

run:进行推送

1.7Docker镜像上传至Harbor镜像服务器

登录私有仓库

docker login -u admin -p harbor密码 192.168.10.194:9526

将镜像进行标记

# docker tag 镜像名称:镜像版本 harbor服务器IP:harbor服务器端口/harbor中创建的项目/上传到harbor中镜像名称:上传到harbor中镜像版本
docker tag blog:latest 192.168.10.194:9526/public/blog:latest

上传镜像

docker push 192.168.10.194:9526/public/blog:latest

 

二、IDEA发布镜像至Harbor服务器

2.1修改Pom文件

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><!--<version>3.1.6</version>--><version>2.6.3</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>com.csdn</groupId><artifactId>blog</artifactId><name>blog</name><description>Demo project for Spring Boot</description><properties><dadao.version>1.0.0-RELEASE</dadao.version><java.version>1.8</java.version><harbor.namespace>public</harbor.namespace><docker.host>192.168.10.194:2375</docker.host><harbor.host>192.168.10.194:9526</harbor.host></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><build><finalName>blog-${dadao.version}</finalName><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><image><builder>paketobuildpacks/builder-jammy-base:latest</builder></image><excludes><exclude><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></exclude></excludes></configuration></plugin><plugin><groupId>com.spotify</groupId><artifactId>dockerfile-maven-plugin</artifactId><version>1.4.13</version><executions><execution><id>build-image</id><phase>package</phase><goals><!--如果package时不想用docker打包,就注释掉这个goal--><goal>build</goal><goal>push</goal></goals></execution></executions><configuration><!--是否跳过推送镜像是Harbor false:不跳过,进行推送  true:跳过,不推送镜像至Harbor--><skip>false</skip><!-- 上下文路径配置,此处设置为项目根路径 用来读取Dockerfile--><contextDirectory>${project.basedir}</contextDirectory><!--允许使用settings.xml中配置访问远程构件库的认证信息 --><useMavenSettingsForAuth>true</useMavenSettingsForAuth><!--上传路径/镜像构建名: 私服地址/私服项目名/springboot项目名--><repository>${harbor.host}/${harbor.namespace}/${project.artifactId}</repository><tag>${project.version}</tag><buildArgs><JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE></buildArgs></configuration></plugin></plugins></build></project>

2.2修改Pom文件

信息: I/O exception (java.io.FileNotFoundException) caught when processing request to {}->npipe://localhost:80: \\.\pipe\docker_engine (系统找不到指定的文件。)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/237894.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Tg2520smn ((tcxo / vc-tcxo)高稳定性)

TG2520SMN是一款高稳定性的(TCXO/VC-TCXO)产品&#xff0c;其频率输出范围为10MHz至55MHz&#xff0c;提供多种电源电压选项&#xff0c;分别为1.8 V类型、2.8 V类型、3.0 V类型和3.3 V类型&#xff0c;该产品具备优异的频率/温度特性&#xff0c;最大的频率稳定性为0.5 10^6 …

SpringIOC之BeanFactoryResolver

博主介绍&#xff1a;✌全网粉丝5W&#xff0c;全栈开发工程师&#xff0c;从事多年软件开发&#xff0c;在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战&#xff0c;博主也曾写过优秀论文&#xff0c;查重率极低&#xff0c;在这方面有丰富的经验…

智能感知时代已来,汉威科技柔性传感器迎来发展新机遇

近年来&#xff0c;消费电子、医疗健康、智能汽车、人机交互等领域的黑科技产品不断出现&#xff0c;催生了许多新功能、新场景、新市场。 TWS耳机&#xff1a;许多TWS&#xff08;真无线立体声&#xff09;耳机厂商开始摒弃传统的触摸感应模式&#xff0c;转而采用最先进的压…

【算法刷题】Day22

文章目录 1. 按摩师题干&#xff1a;算法原理&#xff1a;&#xff08;dp&#xff09;1. 状态表示&#xff1a;2. 状态转移方程3. 初始化4. 填表顺序5. 返回值 代码&#xff1a; 2. 寻找数组的中心下标题干&#xff1a;算法原理&#xff1a;&#xff08;前缀和&#xff09;代码…

vue 简单实现购物车:商品基础信息最终的 html 文件 + 商品计数器的组件处理,实现了购物车;

购物车实现过程&#xff1a; Ⅰ、商品购物车作业需求&#xff1a;1、商品购物车页面示例&#xff1a;2、具体需求&#xff1a; Ⅱ、html 文件的构建&#xff1a;商品购物车.html Ⅲ、组件文件的构建&#xff1a;商品购物车1.js Ⅳ、小结&#xff1a; Ⅰ、商品购物车作业需求&am…

百度侯震宇详解:大模型将如何重构云计算?

12月20日&#xff0c;在2023百度云智大会智算大会上&#xff0c;百度集团副总裁侯震宇以“大模型重构云计算”为主题发表演讲。他强调&#xff0c;AI原生时代&#xff0c;面向大模型的基础设施体系需要全面重构&#xff0c;为构建繁荣的AI原生生态筑牢底座。 侯震宇表示&…

Go语言与HTTP/2协议的实践探索

随着互联网技术的发展&#xff0c;HTTP/2协议逐渐成为主流。Go语言作为一种高效、简洁的编程语言&#xff0c;与HTTP/2协议的结合具有很大的潜力。本文将探讨Go语言与HTTP/2协议的实践探索。 一、HTTP/2协议的优势 HTTP/2协议相比HTTP/1.1协议&#xff0c;具有以下优势&#…

浅谈ASO优化如何应对市场竞争的挑战

随着应用市场的竞争越来越激烈&#xff0c;ASO优化也要为了应对各种来临的风险与机遇做出改变&#xff0c;提高自己的适应能力&#xff0c;下面小柚整理了一些思路供大家参考。 1. 深入了解目标用户需求&#xff1a;首先&#xff0c;需要深入了解目标用户的需求和痛点&#xf…

Qt 6.3 学习笔记

文章目录 Qt的安装和配置创建一个Qt项目信号和槽布局和控件绘图和动画数据库和网络 Qt是一个跨平台的C图形用户界面应用程序开发框架。它提供了创建GUI应用程序的工具和库。Qt 6.3是Qt的最新版本&#xff0c;引入了许多新特性和改进。在这个章节中&#xff0c;我们将详细介绍如…

单片机原理及应用:Keil μVision4和Proteus 8的配置介绍

笔者所在的专业最近开设了单片机课程&#xff0c;对笔者而言&#xff0c;虽然之前有一定的代码基础。但还是第一次面对既要求代码架构又要求电路仿真的领域。为了巩固知识和增强记忆&#xff0c;特此创建了这个专栏&#xff0c;谨以一名非电专业初学者的身份记录和分享知识。 …

B/S医院手术麻醉临床管理系统源码 手术申请、手术安排

手术麻醉系统概述 手术室是医院各个科室工作交叉汇集的一个重要中心&#xff0c;在时间、空间、设备、药物、材料、人员调配的科学管理、高效运作、安全质控、绩效考核&#xff0c;都十分重要。手术麻醉管理系统&#xff08;Operation Anesthesia Management System&#xff0…

Python异常捕获和处理方式

目录 一、引言 二、异常捕获和处理的基本方式 1、try-except语句块 2、raise语句 3、assert语句 三、高级异常捕获和处理技术 1、多个except块 2、finally块 3、使用多个try-except块 4、使用with语句 5、使用多个except块捕获同一种异常 四、总结 一、引言 在Pyt…

优化Go语言HTTP应用程序性能的技巧

Go语言具有强大的性能和高效的网络编程能力&#xff0c;因此在构建高性能的HTTP应用程序时&#xff0c;使用Go语言是一个不错的选择。以下是一些优化Go语言HTTP应用程序性能的技巧&#xff1a; 使用goroutine和channel Go语言的goroutine和channel是实现并发编程的重要特性。…

将qt程序注册成服务

将qt程序注册成服务 1、qt服务模块管理下载 qt-solutions 2、QtService项目 2.1、将qtservice拷贝到项目代码路径 2.2、实现服务管理 PS&#xff1a;响应服务的启停 CustomService.h #include <QCoreApplication> #include "qtservice.h"class CustomSer…

HarmonyOS 应用事件打点开发指导

简介 传统的日志系统里汇聚了整个设备上所有程序运行的过程流水日志&#xff0c;难以识别其中的关键信息。因此&#xff0c;应用开发者需要一种数据打点机制&#xff0c;用来评估如访问数、日活、用户操作习惯以及影响用户使用的关键因素等关键信息。 HiAppEvent 是在系统层面…

Kafka集群架构原理(待完善)

kafka在zookeeper数据结构 controller选举 客户端同时往zookeeper写入, 第一个写入成功(临时节点), 成为leader, 当leader挂掉, 临时节点被移除, 监听机制监听下线,重新竞争leader, 客户端也能监听最新leader leader partition自平衡 leader不均匀时, 造成某个节点压力过大, …

SpringCloudGateway网关处拦截并修改请求

SpringCloudGateway网关处拦截并修改请求 需求背景 老系统没有引入Token的概念&#xff0c;之前的租户Id拼接在请求上&#xff0c;有的是以Get&#xff0c;Param传参形式&#xff1b;有的是以Post&#xff0c;Body传参的。需要在网关层拦截请求并进行请求修改后转发到对应服务。…

工业自动化的通信核心—钡铼技术R10A工业级路由器介绍

随着工业自动化的快速发展&#xff0c;工业通信技术也日新月异。在这个信息时代&#xff0c;工业通信设备的稳定性、可靠性和高效性变得尤为重要。作为工业自动化的核心部件之一&#xff0c;钡铼技术R10A工业级路由器以其出色的性能和卓越的功能在行业内赢得了广泛的赞誉。本文…

docker学习(十二、Redis主从容错迁移)

文章目录 一、容错切换迁移挂一个master节点6381&#xff0c;查看集群信息主节点挂一个&#xff0c;对应从节点切换为主节点&#xff0c;数据获取测试恢复挂的主节点&#xff0c;主从关系变化 二、小思考 docker搭建Redis集群相关知识&#xff1a; docker学习&#xff08;九、分…

C# SQLite基础工具类

目录 1、安装System.Data.SQLite工具包 2、创建数据库 3、数据库的连接与断开 4、执行一条SQL语句 5、批量执行sql语句 6、返回首行首列值 7、执行sql语句返回datatable 1、安装System.Data.SQLite工具包 2、创建数据库 /// <summary> /// 数据库路径 …