kubernates中怎么部署springboot
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,本篇文章给大家分享的是有关kubernates中怎么部署springboot,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1、创建一个S
千家信息网最后更新 2025年12月03日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安全错误
数据库的锁怎样保障安全
网络安全边界机制
网络安全 评论员
大学生网络安全利
数据库中的精度和标度
楼梯配色软件开发
工行软件开发校招难不难
蔚来软件开发面试题
免费服务器杀毒软件
2021网络安全考试
几十块租的云服务器咋用
网络安全严峻形势
汽车网络安全认证法规实施日期
网络安全在哪儿学的
如何关闭服务器ie安全设置
青岛网络时间服务器ip地址
生活中存在的网络安全隐患
mis数据库开发平台是什么
网络安全暑期志愿活动总结
php怎么换数据库数组
云服务器行业热点聚焦
软件开发公司排名知乎
医院系统服务器内部错误
护苗网络安全课堂600字
名片设计软件开发
服务器迁移需要备份数据吗
登陆服务器可以干嘛
丰台区加工软件开发操作
网络安全考研知乎
河北第三方软件开发多少钱
中孚服务器管理 招标