kubernates中怎么部署springboot
发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,本篇文章给大家分享的是有关kubernates中怎么部署springboot,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1、创建一个S
千家信息网最后更新 2026年11月04日kubernates中怎么部署springboot
本篇文章给大家分享的是有关kubernates中怎么部署springboot,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
1、创建一个Springboot应用
List-1.1
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class HelloController { @RequestMapping(value = "/") public String hello(){ System.out.println("hello方法"); return "Hello, k8s!"; } }之后mvn clean package,打包,得到app.jar,和Dockerfile放在同一个目录下
List-1.2
mjduan@mjduan-ubuntu:/opt/software/docker/springboot-k8s$ ll total 676796 drwxr-xr-x 2 mjduan mjduan 4096 2月 15 15:43 ./ drwxr-xr-x 4 mjduan mjduan 4096 2月 15 15:30 ../ -rw-r--r-- 1 mjduan mjduan 16674428 2月 15 15:31 app.jar -rw-r--r-- 1 mjduan mjduan 362 2月 15 15:37 Dockerfile
2、制作镜像
Dockerfile的内容为
List-2.1
FROM openjdk:8 ADD app.jar /opt/app/app.jar RUN bash -c 'touch /opt/app/app.jar' # 开放8080端口 EXPOSE 8080 ENV TZ=Asia/Shanghai RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone # 配置容器启动后执行的命令 ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/opt/app/app.jar"]
之后执行命令来得到镜像
List-2.2
mjduan@mjduan-ubuntu:/opt/software/docker/springboot-k8s$ docker build -t hello:1.0 .
3、将该镜像放到所有的节点上
之后将这个镜像放到k8s的master和俩个node上,这里我是先用
docker save hello:1.0>hello.tar
命令得到文件hello.tar,之后将hello.tar用scp命令传到k8s的master和俩个node上。
之后在k8s的master和俩个node上,执行如下命令得到镜像hello:1.0
docker load -i hello.tar
4、kubernates上部署
好了,上述步骤完成后,在k8s的master上创建yaml文件
[root@localhost mjduan]# vi /data/mjduan/hello.yaml
hello.yaml的内容如下
apiVersion: apps/v1beta2 kind: Deployment metadata: name: example-demo3 labels: app: example-demo3 spec: replicas: 1 revisionHistoryLimit: 10 selector: matchLabels: app: example-demo3 template: metadata: labels: app: example-demo3 spec: containers: - name: example-demo3 #image名称是我们的hello:1.0 image: hello:1.0 ports: - containerPort: 8080 protocol: TCP livenessProbe: httpGet: path: / port: 8080 initialDelaySeconds: 30 timeoutSeconds: 30 imagePullPolicy: Never # Comment the following tolerations if Dashboard must not be deployed on master tolerations: - key: node-role.kubernetes.io/master effect: NoSchedule --- apiVersion: v1 kind: Service metadata: name: example-demo3 labels: app: example-demo3 spec: ports: - port: 8080 targetPort: 8080 selector: app: example-demo3 type: NodePort
部署Docker image,命令如下
[root@localhost mjduan]# kubectl create -f hello.yaml deployment.apps/example-demo3 created service/example-demo3 created
查看pod信息,如下
[root@localhost mjduan]# kubectl get pods NAME READY STATUS RESTARTS AGE example-demo3-746fc684df-h5dpq 1/1 Running 0 10s
查看service,如下,NAME为example-demo3的那个就是我们刚刚部署的,端口映射是宿主机的32300对应到容器的8080
[root@localhost mjduan]# kubectl get services NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE example-demo3 NodePort 10.107.189.1278080:32300/TCP 1m kubernetes ClusterIP 10.96.0.1 443/TCP 2h
访问服务
[root@localhost mjduan]# curl http://k8s.master:32300 Hello, k8s!
以上就是kubernates中怎么部署springboot,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。
命令
镜像
内容
容器
就是
文件
更多
知识
端口
篇文章
实用
信息
名称
宿主
宿主机
工作会
文章
方法
步骤
目录
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
云信互联网科技有限公司
互联网科技垄断
科技企业和互联网企业
互联网最新的科技有限公司
嘟嘟瓜互联网科技
上海喔噻互联网科技
猫创互联网科技
上海卓越科技 互联网
互联网科技英文翻译
上海亿帐通互联网科技
济南华为互联网科技产业总部基地
互联网科技热点资讯
互联网经济与金融科技
互联网对科技的发展
辽宁互联网新科技
风投北京互联网科技
上海同邻互联网科技有限公司规模
陕西九四连强互联网科技有限公司
广州三三互联网科技有限公司
平安好医生打造互联网科技医疗
互联网科技图片
阿里巴巴算科技企业还是互联网
上海宁丞科技互联网
速维有品互联网信息科技(苏州)有限公司
允成互联网科技有限公司融资
河南住房之家互联网科技
用友工业互联网科技发展
山东星卡互联网科技有限公司官网
科技互联网经济论坛
恒生科技互联网指数十大成分股