千家信息网

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.127           8080: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安全错误 数据库的锁怎样保障安全 云信互联网科技有限公司 互联网科技垄断 科技企业和互联网企业 互联网最新的科技有限公司 嘟嘟瓜互联网科技 上海喔噻互联网科技 猫创互联网科技 上海卓越科技 互联网 互联网科技英文翻译 上海亿帐通互联网科技 济南华为互联网科技产业总部基地 互联网科技热点资讯 互联网经济与金融科技 互联网对科技的发展 辽宁互联网新科技 风投北京互联网科技 上海同邻互联网科技有限公司规模 陕西九四连强互联网科技有限公司 广州三三互联网科技有限公司 平安好医生打造互联网科技医疗 互联网科技图片 阿里巴巴算科技企业还是互联网 上海宁丞科技互联网 速维有品互联网信息科技(苏州)有限公司 允成互联网科技有限公司融资 河南住房之家互联网科技 用友工业互联网科技发展 山东星卡互联网科技有限公司官网 科技互联网经济论坛 恒生科技互联网指数十大成分股
0