利用(K8S)配合Docker部署jar包

简介: 通过Docker打包并部署到Kubernetes(K8S)集群的过程。首先,通过SpringBoot生成jar包,接着在K8S环境中创建并编辑Dockerfile文件。随后构建Docker镜像,并将其推送到镜像仓库。最后,通过一系列kubectl命令(如get pods、get svc、logs等),展示了如何在K8S中管理应用,包括查看Pod状态、服务信息、Pod日志以及重启Pod等操作。

最近有个JAVA的后台项目需要部署在K8S上,简单记录一下配合Docker打jar包的部署流程,
JAVA项目打成jar包
1 SpringBoot打包,生成一个jar包
(springcloud-help-center-provider-0.0.1-SNAPSHOT.jar)

K8S上创建Dockerfile文件
Dockerfile文件位置如下:
image.png
将Dockerfile文件使用 EditPlus打开
image.png
在服务器上打开
输入命令:[root@damiapp113 help]# vi Dockerfileimage.png
构建Docker镜像

【末尾有个点,一点要注意】最后的.表示Dockerfile在当前目录

docker build -t 镜像名:版本 .

示例如下(-t参数指定构建成后,镜像的仓库、标签等)

docker build -t test_k8s_provider_0001.jar:1.0.1 .
镜像构建成功,出现如下(

Successfully built 0d81cf52dba2
Successfully tagged test_k8s_provider_0001.jar:1.0.0):image.png
使用docker images命令查看自己所构建的镜像

[root@damiapp113 test]# docker images

image.png
镜像推送push
[root@testapp113 test]# docker push test_k8s_provider_0001.jar:1.0.0

推送成功之后就可以就可以使用了。

查看K8S上运行的所有pod
命令:[root@damiapp113 ~]# kubectl -n dami get podsimage.png
获取SVC信息:

命令:[root@damiapp113 ~]# kubectl -n dami get svcimage.png
查看pod详细信息命令:[root@damiapp113 ~]# kubectl -n dami describe pod platform-helpdimage.png
查看pod日志
命令:[root@damiapp113 ~]# kubectl -n dami logs platform-help-96f
image.png
查看部署的 deployment
命令:[root@damiapp113 ~]# kubectl -n dami get deployment
查看deployment内运行容器的名
命令:

[root@damiapp113 ~]# kubectl –n dami describe deployment platform-help

重启pod
当pod出现异常时可以执行delete命令删除pod,系统会自动生成一个新的pod

命令:[root@damiapp113 ~]# kubectl –n dami delete pod platform-help-96f5ffc9-q8fpd

强制关闭pod

命令:

[root@damiapp113 ~]# kubectl delete pod platform-help-96f5ffc9-q8fpd -n dami --force --grace-period=0

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
目录
打赏
0
3
3
1
219
分享
相关文章
使用ArgoCD管理Kubernetes部署指南
ArgoCD 是一款基于 Kubernetes 的声明式 GitOps 持续交付工具,通过自动同步 Git 存储库中的配置与 Kubernetes 集群状态,确保一致性与可靠性。它支持实时同步、声明式设置、自动修复和丰富的用户界面,极大简化了复杂应用的部署管理。结合 Helm Charts,ArgoCD 提供模块化、可重用的部署流程,显著减少人工开销和配置错误。对于云原生企业,ArgoCD 能优化部署策略,提升效率与安全性,是实现自动化与一致性的理想选择。
72 0
|
11天前
|
Ubuntu下部署及操作Docker技巧
以上就是在Ubuntu下部署及操作Docker的具体步骤。但这只是冰山一角,Docker的魅力远不仅如此。你可以将其视为存放各种工具的小箱子,随时随地取用,极大地提升工作效率。你也可以私人订制,适应不同的开发环境,就像一个拥有各种口味冰淇淋的冰箱,满足各种各样的需求。好了,现在你已经掌握了基本的Docker运用技巧,快去尝试使用吧!记住,沉浸在探索中,你会找到无尽的乐趣和满满的收获。
66 23
K8s集群实战:使用kubeadm和kuboard部署Kubernetes集群
总之,使用kubeadm和kuboard部署K8s集群就像回归童年一样,简单又有趣。不要忘记,技术是为人服务的,用K8s集群操控云端资源,我们不过是想在复杂的世界找寻简单。尽管部署过程可能遇到困难,但朝着简化复杂的目标,我们就能找到意义和乐趣。希望你也能利用这些工具,找到你的乐趣,满足你的需求。
123 33
Kubernetes与Docker参数对照:理解Pod中的command、args与Dockerfile中的CMD、ENTRYPOINT。
需要明确的是,理解这些都需要对Docker和Kubernetes有一定深度的理解,才能把握二者的区别和联系。虽然它们都是容器技术的二个重要组成部分,但各有其特性和适用场景,理解它们的本质和工作方式,才能更好的使用这些工具,将各自的优点整合到生产环境中,实现软件的快速开发和部署。
73 25
集群部署:使用Rancher部署Kubernetes集群。
以上就是使用 Rancher 部署 Kubernetes 集群的流程。使用 Rancher 和 Kubernetes,开发者可以受益于灵活性和可扩展性,允许他们在多种环境中运行多种应用,同时利用自动化工具使工作负载更加高效。
74 19
大模型文件Docker镜像化部署技术详解
大模型文件Docker镜像化部署技术详解
164 2
|
1月前
|
在Docker上部署Ollama+AnythingLLM完成本地LLM Agent部署
通过以上步骤,您可以成功在Docker上部署Ollama和AnythingLLM,实现本地LLM Agent的功能。在部署过程中,确保环境和配置正确,以避免不必要的问题。希望本文能够帮助您顺利完成部署,并在本地环境中高效地使用LLM模型。
552 8
阿里云云效操作报错合集之部署docker时遇到报错,该怎么办
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等