K8s 部署springboot应用

本文详细介绍了如何将一个Spring Boot应用打包成Docker镜像,并推送到Docker Hub。接着,通过创建Kubernetes Deployment来部署该应用,并确保应用运行状态。最后,对外暴露服务端口30020,可以通过访问特定URL查看运行结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

打包Docker镜像并推送到Docker Hub

提前准备一个最简单的springboot 的jar包。然后参考下文把jar包推送到docker Hub.

镜像推送到Docker Hub

创建Deployment

docker镜像上传docker hub吼,我们就可以写k8s的部署文件了。

#创建deployment
kubectl create deployment springboot-k8s-demo --image=zhoushen100/springboot-k8s-demo:1.0 --dry-run=client -o=yaml > deployment.yaml

echo --- >> deployment.yaml

#创建nodeport模式的servcie
#nodeport模式可以直接通过节点暴露的端口,访问服务(演示方便)
kubectl create service nodeport springboot-k8s-demo --tcp=8080:8080 --dry-run=client -o=yaml >> deployment.yaml

部署Deployment

#部署
kubectl apply -f deployment.yaml

查看结果

查看结果为runing。

[vagrant@master-node ~]$ kubectl get pods
NAME                        READY   STATUS    RESTARTS   AGE
k8s-demo2-7b7b9dc99-qfs26   1/1     Running   0          30m
nginx-6799fc88d8-4wt88      1/1     Running   0          3h36m
nginx-6799fc88d8-dcqzr      1/1     Running   0          4h39m

查看service, 对外暴露端口 30020

[vagrant@master-node ~]$ kubectl get svc
NAME         TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)          AGE
k8s-demo2    NodePort    10.10.209.10    <none>        8080:30020/TCP   31m
kubernetes   ClusterIP   10.10.0.1       <none>        443/TCP          4h44m
nginx        NodePort    10.10.133.109   <none>        80:32603/TCP     4h19m

使用 http://<集群任意工作节点>:30020/actuator 访问查看结果

image-20210318175929018

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值