K8s部署spring boot应用

一、前言

spring boot是目前比较流行的快速Java web开发工具,笔者最近使用spring boot开发了部分微服务,并使用k8s进行部署,部署过程中遇到了些问题,现将部署方案分享给大家。开发工具:IDEA,JDK:1.8,构建工具: maven。

二、部署步骤

2.1程序打包

在IDEA开发环境打开工程,Terminal下,执行打包命令:

mvn install  

成功后,会在target目录下生成***.jar文件,验证jar文件可用性:

  • 启动:java -jar ***.jar
  • 使用POSTMAN查看接口是否可用。

2.2 镜像制作

  • 编写Dockerfile
FROM java:8
MAINTAINER tc
ADD  ***.jar  app.jar
EXPOSE 31001
ENTRY

文件内容解释:
1、基镜像为JAVA 版本为8
2、作者名字
3、将项目添加到镜像中,并重命名为app.jar
4、运行镜像文件,监听端口为31001
5、启动时运行java -jar app.jar

  • 构建docker镜像
docker build –t **imageName:v1.0** .   

使用如下命令查看镜像是否构建成功:

docker images  

2.3 将镜像编排到k8s集群中

  • 编写 rc.yaml文件:
apiVersion: v1
kind: ReplicationController
metadata:
        name: svrName
spec:
        replicas: 1
        selector:
                  app: svrName
        template:
                metadata:
                        labels:
                                app: svrName
               spec:
                       containers:
                       - name: svrName
                         image: **imageName:v1.0**
                         ports:
                                 - containerPort:  31001


-编写 svc.yaml文件:

apiVersion: v1
kind: Service
metadata:
        name: svrName
spec:
         type: NodePort
         ports:
         - port: 31001
           nodePort: **31001** 
         selector:
                  app: svrName

  • 创建rc:
kubectl create -f rc.yaml .

查看创建结果:

kubectl  get rc
  • 创建svc:
kubectl create -f svc.yaml .

查看创建结果:

kubectl  get svc
  • 查看pod:
kubectl get pod -o wide

2.4 外部访问

http://192.168.10.11:31001/test/get

©️2020 CSDN 皮肤主题: 大白 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值