Kubernetes集群-部署Java项目

news2024/11/17 14:29:03

Kubernetes集群-部署Java项目(SSG)

k8s部署项目java流程图

在这里插入图片描述

第一步 打包+制作镜像

在这里插入图片描述

打包 java源码:

在这里插入图片描述
application.properties
在这里插入图片描述

#在有pom.xml的路径下执行
mvn clean package

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

制作镜像:

在这里插入图片描述

将刚才打包后的文件夹传到,装有docker的服务器,来制作镜像。
在这里插入图片描述
编写Dockerfile

FROM openjdk:8-jdk-alpine  #jdk环境
VOLUME /tmp  # 临时存储的文件
ADD ./target/demojenkins.jar demojenkins.jar  #进行打包
ENTRYPOINT ["java","-jar","/demojenkins.jar", "&"] #启动

制作镜像

#制作
docker build -t java-demo-01:latest .

#本地启动验证
docker run -d -p 8111:8111 java-demo-01:latest -t

浏览器访问java项目: http://192.168.44.134:8111/user
在这里插入图片描述

第二步 推送镜像(阿里云容器镜像)

在这里插入图片描述
在这里插入图片描述
登陆阿里云的镜像仓库

$ docker login --username=XXX registry.cn-hangzhou.aliyuncs.com

官网demo:
在这里插入图片描述
推送操作:

docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/aliyundem/java-project01:[镜像版本号]
docker push registry.cn-hangzhou.aliyuncs.com/glutgl/java-project-01:[镜像版本号]

在这里插入图片描述

在这里插入图片描述
拉取操作:

 docker pull registry.cn-hangzhou.aliyuncs.com/aliyundemq/java-project01:[镜像版本号]

在这里插入图片描述

第三步 部署镜像到k8s

在这里插入图片描述

创建deployment

kubectl create deployment javademo1 --image=registry.cn-hangzhou.aliyuncs.com/aliyundemojq/java-project01:[镜像版本号] --dry-run -o yaml >javademo1.yaml

kubectl apply -f javademo1.yaml
kubectl get pods -o wide

#扩容操作
kubectl scale deployment javademo1 --replicas=3

在这里插入图片描述

创建svc 暴露端口

#生产环境一般都是写成yaml文件。
kubectl expose deployment javademo1 --port=8111 --target-port=8111 --type=NodePort

在这里插入图片描述
访问验证:输入master或node1的IP+30675
在这里插入图片描述

END

参考:
https://blog.csdn.net/qq_45498432/article/details/128049672
https://blog.csdn.net/qq_50255609/article/details/127593491

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

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

相关文章

(考研湖科大教书匠计算机网络)第三章数据链路层-第十一节:虚拟局域网VLAN概述和实现机制

获取pdf:密码7281专栏目录首页:【专栏必读】考研湖科大教书匠计算机网络笔记导航 文章目录一:VLAN概述(1)分割广播域(2)虚拟局域网VLAN二:VLAN实现机制(1)IEE…

LeetCode题目笔记——15. 三数之和

文章目录题目描述题目链接题目难度——中等方法一:暴力(参考)代码/Python 参考方法二:哈希代码/Python参考方法三:排序双指针代码/Python代码/C总结题目描述 龙门阵:这个n个数之和是不是有什么深意啊&#…

Python中的类和对象(6)

文章目录1.多态2.类继承的多态3.自定义函数的多态4.鸭子类型5.思维导图1.多态 多态在编程中是一个非常重要的概念,它是指同一个运算符、函数或对象在不同的场景下,具有不同的作用效果,这么一个技能。 我们知道加号()…

加载sklearn新闻数据集出错 fetch_20newsgroups() HTTPError: HTTP Error 403: Forbidden解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。喜欢通过博客创作的方式对所学的知识进行总结与归纳,不仅形成深入且独到的理…

大数据框架之Hadoop:入门(五)Hadoop编译源码(面试重点)

5.1 前期准备工作 1.CentOS联网 配置CentOS能连接外网。Linux虚拟机ping www.baidu.com 是畅通的 注意:采用root角色编译,减少文件夹权限出现问题 2.jar包准备(hadoop源码、JDK8、maven、ant 、protobuf) (1)hadoop-2.7.7-sr…

【TCP的拥塞控制】基于窗口的拥塞控制

TCP的拥塞窗口CWND大小和传输轮次n的关系如下所示。(本题10分) cwnd12481632333435363738394041422122232425261248N1234567891011121314151617181920212223242526 问题: (1)慢开始阶段的时间间隔?&#…

NFC enable NFC使能流程

同学,别退出呀,我可是全网最牛逼的 WIFI/BT/GPS/NFC分析博主,我写了上百篇文章,请点击下面了解本专栏,进入本博主主页看看再走呗,一定不会让你后悔的,记得一定要去看主页置顶文章哦。 NFC enable NFC使能流程 认识nfc系统如何工作,最好的方法就是了解nfc的各个流程,…

linux系统下SVN服务器搭建

linux新手,整了好几天才搞好,做下笔记以备后续使用: 1、下载svn服务器 yum -y install subversion 2、创建仓库 svnadmin create /opt/svn/pro/respos1 svnadmin create /opt/svn/pro/respos2 3、配置用户以及权限 1:cd到仓库目录下&#…

py3常用返回规则字符串的函数+ascii与char的转换

文章目录py3常用返回规则字符串的函数字符转ascii以及ascii转字符的方法为:py3常用返回规则字符串的函数 注明原来的网址为:https://docs.python.org/3.8/library/string.html string.ascii_letters 返回所有的大写、小写字母 string.ascii_lowercase 返…

寒假安全作业nginx-host绕过实例复现

1.测试环境搭建 LNMP架构的话,肯定就是linux、nginx、mysql、php四大组件。在后面的复现中我们还会用到https的一部分知识,故这里的nginx就需要使用虚拟主机并且配置https证书,且具有php解析功能。 1.1 基础nginx配置 #1.创建web目录 mkdir …

MySQL-InnoDB行格式浅析

简介 我们知道读写磁盘的速度非常慢,和内存读写差了几个数量级,所以当我们想从表中获取某些记录时, InnoDB 存储引擎需要一条一条的把记录从磁盘上读出来么? 不,那样会慢死,InnoDB 采取的方式是&#xff1a…

雅思经验(十三)

感觉这篇其实有点小难,我在精听的才发现那是六个实验对象,但是叫做six subjects在精听的时候感觉有些手忙脚乱,像是一团乱麻一样,但是也是没有什么关系。其实这才是查漏补缺,cello player 这是大提琴师violinists 小提…

08- 数据升维 (PolynomialFeatures) (机器学习)

在做数据升维的时候,最常见的手段就是将已知维度进行相乘(或者自乘)来构建新的维度 使用 np.concatenate()进行简单的,幂次合并,注意数据合并的方向axis 1 数据可视化时,注意切片,因为数据升维…

SpringDI自动装配BeanSpring注解配置和Java配置类

依赖注入 上篇博客已经提到了DI注入方式的构造器注入&#xff0c;下面采用set方式进行注入 基于set方法注入 public class User {private String name;private Address address;private String[] books;private List<String> hobbys;private Map<String,String>…

【Linux】多线程编程 - 概念/pthread库调用接口/互斥

目录 一.线程概念 1.Linux中线程如何实现 2.POSIX线程库: pthread第三方线程库 3.线程与进程的数据存放问题 4.线程的"高效"具体体现在哪 5.线程优缺点 二.线程控制 0.关于pthread_t类型 1.线程创建 2.线程终止 3.线程等待 4.线程分离 5.代码验证 三.线…

你期待已久的《动手学深度学习》(PyTorch版)来啦!

《动手学深度学习》全新PyTorch版本&#xff0c;李沐和亚马逊科学家阿斯顿张等大咖作者强强联合之作&#xff0c;机器学习、深度学习领域重磅教程&#xff0c;交互式实战环境&#xff0c;配套资源丰富&#xff01; 面向中文读者的能运行、可讨论的深度学习入门书。 动手学深度…

一个优质软件测试工程师简历的范文(一定要收藏)

很多刚转行软件测试的小伙伴是不是不知道怎么写好一份优质的软件测试工程师的简历。今天呢&#xff0c;就给大家分享一下一个优质软件测试工程师简历的范文。记得收藏起来哦。 下面的案例&#xff1a;2-3年的软件测试工程的简历 姓 名&#xff1a;XXX 学历&#xff1a…

2023备战金三银四,Python自动化软件测试面试宝典合集(五)

接上篇八、抓包与网络协议8.1 抓包工具怎么用 我原来的公司对于抓包这块&#xff0c;在 App 的测试用得比较多。我们会使用 fiddler 抓取数据检查结果&#xff0c;定位问题&#xff0c;测试安全&#xff0c;制造弱网环境;如&#xff1a;抓取数据通过查看请求数据&#xff0c;请…

FPGA实现不同分辨率视频切换输出,串口协议帧控制,提供工程源码和技术支持

目录1、不同分辨率视频切换输出原理2、设计思想和架构详解3、vivado工程详解4、上板调试验证并演示5、福利&#xff1a;工程代码的获取1、不同分辨率视频切换输出原理 不同分辨率的视频输出对应不同的时序和时钟&#xff0c;一般情况下是不存在同时或分时输出的&#xff0c;但…

结构体变量

C语言允许用户自己建立由不同类型数据组成的组合型的数据结构&#xff0c;它称为结构体&#xff08;structre&#xff09;。 在程序中建立一个结构体类型&#xff1a; 1.结构体 建立结构体 struct Student { int num; //学号为整型 char name[20]; //姓名为字符串 char se…