利用(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

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
11月前
|
应用服务中间件 网络安全 nginx
手把手教你使用 Docker 部署 Nginx 教程
本文详解Nginx核心功能与Docker部署优势,涵盖镜像拉取、容器化部署(快速、挂载、Compose)、HTTPS配置及常见问题处理,助力高效搭建稳定Web服务。
4426 4
|
11月前
|
应用服务中间件 Linux nginx
在虚拟机Docker环境下部署Nginx的步骤。
以上就是在Docker环境下部署Nginx的步骤。需要注意,Docker和Nginix都有很多高级用法和细节需要掌握,以上只是一个基础入门级别的教程。如果你想要更深入地学习和使用它们,请参考官方文档或者其他专业书籍。
499 5
|
11月前
|
存储 NoSQL Redis
手把手教你用 Docker 部署 Redis
Redis是高性能内存数据库,支持多种数据结构,适用于缓存、消息队列等场景。本文介绍如何通过Docker快速拉取轩辕镜像并部署Redis,涵盖快速启动、持久化存储及docker-compose配置,助力开发者高效搭建稳定服务。
3007 8
|
11月前
|
存储 关系型数据库 MySQL
MySQL Docker 容器化部署全指南
MySQL是一款开源关系型数据库,广泛用于Web及企业应用。Docker容器化部署可解决环境不一致、依赖冲突问题,实现高效、隔离、轻量的MySQL服务运行,支持数据持久化与快速迁移,适用于开发、测试及生产环境。
1422 4
|
Java Maven Docker
Docker部署可执行jar包
Docker部署可执行jar包
6578 0
|
Kubernetes Devops Docker
Kubernetes 和 Docker Swarm:现代 DevOps 的理想容器编排工具
本指南深入解析 Kubernetes 与 Docker Swarm 两大主流容器编排工具,涵盖安装、架构、网络、监控等核心维度,助您根据团队能力与业务需求精准选型,把握云原生时代的技术主动权。
974 115

热门文章

最新文章