win10下使用docker、k8s部署java应用

在上一篇文章 Windows10上Docker和Kubernetes的安装 中,已经介绍了在 Windows10上安装Docker和Kubernetes ,有了这个环境基础之后,就可以用来部署服务了

在项目目录下新建Dockfile文件,内容如下(请根据实际情况调整):

##指定java8环境镜像FROM openjdk:8-jre-alpine##复制文件到容器money_note
ADD target/spring-vertx-mybatis.jar /spring-vertx-mybatis.jar##声明启动端口
EXPOSE 9999##配置容器启动后执行命令
ENTRYPOINT ["java","-jar","/spring-vertx-mybatis.jar"]

然后在Dockfile文件的目录下,本地构建镜像文件:

docker build -t spring-vertx-mybatis:1.0.0

一、docker方式运行java服务
 

docker run --name spring-vertx-mybatis -d  -p 9999:9999  spring-vertx-mybatis:1.0.0


二、k8s方式运行java服务

docker build -t spring-vertx-mybatis:1.0.0kubectl create namespace api

新建用于部署的yaml文件:

mkdir deployment-spring-vertx-mybatis.yaml
vi deployment-spring-vertx-mybatis.yaml

yaml文件内容如下: 

apiVersion: apps/v1 # kubernetes API版本号
kind: Deployment # 资源类型:Deployment
metadata:name: spring-vertx-mybatis # 资源的名字,在同一个namespace中必须唯一namespace: api    #必选,Pod所属的命名空间
spec:selector:matchLabels:app: spring-vertx-mybatis # 使用标签选择器replicas: 3 # 设置副本数为3个template:metadata:labels:app: spring-vertx-mybatis # 标记 Pod 的标签spec:containers:- name: spring-vertx-mybatis # 容器名称image: spring-vertx-mybatis:1.0.0 # 指定容器镜像ports:- containerPort: 8080 # 开放端口号
---
apiVersion: v1 # kubernetes API版本
kind: Service # 资源类型:Service
metadata:name: spring-vertx-mybatis # 资源名称
spec:type: LoadBalancer # 暴露 Service 的类型为 LoadBalancer,通过外部负载均衡器访问ports:- port: 9999 # 容器对外的端口号targetPort: 9999 # 容器内的实际端口号protocol: TCP # 暴露的协议为TCPselector:app: spring-vertx-mybatis # 标记应用程序的标签# 干货!K8S之yaml文件详解 https://blog.csdn.net/ichen820/article/details/117567137
# K8S中 yaml 文件详解   https://blog.csdn.net/kele_baba/article/details/119876397
kubectl apply -f  deployment-spring-vertx-mybatis.yamlkubectl get pods -n api

参考文档:

Kubernetes 集群上的部署JAVA 步骤

 干货!K8S之yaml文件详解 https://blog.csdn.net/ichen820/article/details/117567137
 K8S中 yaml 文件详解   https://blog.csdn.net/kele_baba/article/details/119876397

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

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

相关文章

前端——阿里图标的使用

阿里图标 将小图标定义成字体,通过引入字体的方式来展示这些图标 1.打开阿里图标库 https://www.iconfont.cn/ 2.登录 / 注册一个账号 3.选中你需要使用的图标 并且把它加入购物车 4.全部选择完之后 点击右上角 购物车 然后下载代码 5.解压后你下载的文…

Web+Mysql——MyBatis

MyBatis 目标 能够完成Mybatis代理方式查询数据能够理解Mybatis核心配置文件的配置 1,Mybatis 1.1 Mybatis概述 1.1.1 Mybatis概念 MyBatis 是一款优秀的持久层框架,用于简化 JDBC 开发 MyBatis 本是 Apache 的一个开源项目iBatis, 2010年这个项目由…

面试面经|大模型算法岗常见面试题100道

本文提供了一份全面的大模型算法岗位面试题清单,包括基础理论、模型结构、训练微调策略、应用框架、分布式训练和模型推理等方面的知识点,旨在帮助求职者准备相关技术面试。 一、基础篇 1、目前主流的开源模型体系有哪些? Transformer体系&a…

neo4j(spring) 使用示例

文章目录 前言一、neo4j是什么二、开始编码1. yml 配置2. crud 测试3. node relation 与java中对象的关系4. 编码测试 总结 前言 图数据库先驱者 neo4j:neo4j官网地址 可以选择桌面版安装等多种方式,我这里采用的是docker安装 直接执行docker安装命令: docker run…

zabbix“专家坐诊”第256期问答

原作者:乐维社区 原文链接:https://forum.lwops.cn/questions 问题一 Q:zabbix 6.4.18版本的,使用zabbix_agentd2监控mysql数据库,只能在界面配置mysql的相关信息吗?这个在zabbix表里面是明文存储的&#x…

力扣反转链表系列【25. K 个一组翻转链表】——由易到难,一次刷通!!!

力扣《反转链表》系列文章目录 刷题次序,由易到难,一次刷通!!! 题目题解206. 反转链表反转链表的全部 题解192. 反转链表 II反转链表的指定段 题解224. 两两交换链表中的节点两个一组反转链表 题解325. K 个一组翻转…

在python爬虫中xpath方式提取lxml.etree._ElementUnicodeResult转化为字符串str类型

简单提取网页中的数据时发现的 当通过xpath方式提取出需要的数据的text文本后想要转为字符串,但出现lxml.etree._ElementUnicodeResult的数据类型不能序列化,在网上查找到很多说是编码问题Unicode编码然后解码什么的;有些是(导入的xml库而不…

Java : 图书管理系统

图书管理系统的作用: 高效的图书管理 图书管理系统通过自动化管理,实现了图书的采编、编目、流通管理等操作的自动化处理,大大提高了图书管理的效率和准确性。 工作人员可以通过系统快速查找图书信息,实时掌握图书的借还情况&…

【Java】Java中接口与内部类详解

目录 引言 一、接口(Interface) 1.1 接口的定义 1.1.1 接口的特点 1.2 接口的实现 1.3 接口的继承 1.4 接口的注意事项 1.5 代码示例 二、内部类(Inner Class) 2.1 内部类特点 2.2 成员内部类 2.2.1 对象的创建 2.…

红外热成像应用场景!

1. 电力行业 设备故障检测:红外热成像仪能够检测电气设备(如变压器、电线接头)的过热现象,及时发现并定位故障点,预防火灾等安全事故的发生。 水电站查漏:在水电站中,红外热成像仪可用于快速查…

【LLM学习之路】9月22日 第九天 自然语言处理

【LLM学习之路】9月22日 第九天 直接看Transformer 第一章 自然语言处理 自然语言处理发展史 只要看的足够多,未必需要理解语言 统计语言模型发展史 统计语言模型: 判断一个句子是否合理,就计算这个句子会出现的概率 缺点是句子越长越…

掌握Python办公自动化,轻松成为职场高效达人

大家好,今天我们来聊聊为什么要学习和了解Python办公自动化? "自动化应用于高效运营将提高效率" ——比尔盖茨 在日常的工作中,存在很多重复性、规律性的工作。虽然现在有很多办公软件能够在一些方面提高工作效率,但无法…

基于FPGA+GPU异构平台的遥感图像切片解决方案

随着遥感和成像技术的不断进步和普及,获取大量高分辨率的遥感图像已成为可能。这些大规模的遥感图像数据需要进行有效的处理和分析,以提取有用的信息,进行进一步的应用。遥感图像切片技术应运而生,该技术可以将大型遥感图像分割成…

python-在PyCharm中使用PyQt5

文章目录 1. 安装 PyQt5 和QtTools2. QtDesigner 和 PyUIC 的环境配置2.1 在 PyCharm 添加 Create Tools2.2 添加 PyUIC 工具 3. 创建ui界面4. 使用python调用ui界面参考文献 1. 安装 PyQt5 和QtTools QT 是最强大的 GUI 库之一,PyQt5 是 Python 绑定 QT5 应用的框…

增强GPT4v的Grounding能力,video-level

开源链接: appletea233/AL-Ref-SAM2: AL-Ref-SAM 2: Unleashing the Temporal-Spatial Reasoning Capacity of GPT for Training-Free Audio and Language Referenced Video Object Segmentation (github.com) In this project, we propose an Audio-Language-Refe…

手写数字识别案例分析(torch,深度学习入门)

在人工智能和机器学习的广阔领域中,手写数字识别是一个经典的入门级问题,它不仅能够帮助我们理解深度学习的基本原理,还能作为实践编程和模型训练的良好起点。本文将带您踏上手写数字识别的深度学习之旅,从数据集介绍、模型构建到…

vue Echart使用

一、在vue中使用Echarts 1.安装Echarts npm install echarts --save2.准备一个呈现图表的盒子 给盒子起名字是建议使用id选择器 这个盒子通常来说就是我们熟悉的 div &#xff0c;这个 div 决定了图表显示在哪里&#xff0c;盒子一定要指定宽和高 <div id"main&quo…

性能测试问题诊断-接口耗时高

问题现象&#xff1a;近期发现每晚跑的定时压测任务&#xff0c;压测结果中&#xff0c;各接口耗时变高&#xff08;原来99耗时<3秒&#xff0c;当前99耗时>20秒)。 问题排查&#xff1a; 查看jmeter 生成的结果图&#xff0c;发现压测2分钟后出现接口耗时变高情况。如下…

【ShuQiHere】 探索数据挖掘的世界:从概念到应用

&#x1f310; 【ShuQiHere】 数据挖掘&#xff08;Data Mining, DM&#xff09; 是一种从大型数据集中提取有用信息的技术&#xff0c;无论是在商业分析、金融预测&#xff0c;还是医学研究中&#xff0c;数据挖掘都扮演着至关重要的角色。本文将带您深入了解数据挖掘的核心概…

如何快速上手一个Github的开源项目

程序研发领域正是有一些热衷开源的小伙伴&#xff0c;技能迭代才能如此的迅速&#xff0c;因此&#xff0c;快速上手一个GitHub上的开源项目&#xff0c;基本上已经变成很个程序员小伙伴必须掌握的技能&#xff0c;因为终究你会应用到其中的一个或多个项目&#xff0c;帮助自己…