当前位置: 首页 > news >正文

Kubernetes集群-部署Java项目

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.yamlkubectl 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.lryc.cn/news/3054.html

相关文章:

  • English Learning - Day54 作业打卡 2023.2.8 周三
  • 【Unity题】 1.矩阵旋转,欧拉旋转,四元数旋转各自的优缺点。2.StringBuilder和String的区别
  • 【C++面试问答】搞清楚深拷贝与浅拷贝的区别
  • day10_面向对象基础
  • 电影订票网站的设计与开发
  • seata【SAGA模式】代码实践(细节未必完全符合saga的配置,仅参考)
  • 面试题:Java锁机制
  • Springboot Web开发
  • 分布式事务 | 使用DTM 的Saga 模式
  • 错误代码0xc0000001要怎么解决?如何修复错误
  • 为什么 HTTP PATCH 方法不是幂等的及其延伸
  • 13 Day:实现内核线程
  • GPU服务器安装显卡驱动、CUDA和cuDNN
  • 结构体变量
  • Java 多态
  • 九龙证券|一夜暴跌36%,美股走势分化,标普指数创近2月最差周度表现
  • 【数据库】 mysql用户授权详解
  • 【性能】性能测试理论篇_学习笔记_2023/2/11
  • C语言(输入printf()函数)
  • Zabbix 构建监控告警平台(四)
  • 2004-2019年285个地级市实际GDP与名义GDP
  • Node.js笔记-Express(基于Node.js的web开发框架)
  • 力扣sql简单篇练习(十五)
  • 浅谈动态代理
  • Idea超好用的管理工具ToolBox(附带idea工具)
  • Spring 中 ApplicationContext 和 BeanFactory 的区别
  • 情人节有哪些数码好物值得送礼?情人节实用性强的数码好物推荐
  • java中flatMap用法
  • 【MySQL Shell】8.9.2 InnoDB ClusterSet 集群中的不一致事务集(GTID集)
  • logstash毫秒时间戳转日期以及使用业务日志时间戳替换原始@timestamp