k8s部署springboot项目

1.首先我们将项目打成jar包

2.制作Dockerfile文件,生成jdk镜像,我们这里总共两台服务器,k8s-master和k8s-node,全部要操作

  1. 将jdk上传到Linux服务器上
  2. 编写Dockerfile文件
    内容如下:
    FROM centos:latest
    MAINTAINER kgf
    ADD jdk-8u191-linux-x64.tar.gz /usr/local/java
    ENV JAVA_HOME /usr/local/java/jdk1.8.0_191
    ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    ENV PATH $PATH:$JAVA_HOME/bin
    CMD java -version

  3. 构建jdk镜像
    命令:docker build -t jdk1.8.0_191 .

     

3.创建项目镜像(两台都操作)

  1. 上传我们的jar包并且创建Dockerfile文件

    内容如下:
    #基于我们刚刚创建的jdk镜像
    FROM jdk1.8.0_191
    MAINTAINER kgf
    ADD springboot-test-demo.jar /opt
    RUN chmod +x /opt/springboot-test-demo.jar
    #运行jar
    CMD java -jar /opt/springboot-test-demo.jar
     
  2. 构建项目镜像
    命令:docker build -t springboot-test-demo .

     
  3. 空运行测试生成我们的yaml文件
    1)命令:
         kubectl create deployment deployment名称 --image=我们项目的镜像名称 --dry-run -o yaml > 要生成的yaml文件
         注意:--dry-run表示空运行测试,不会真正的运行
                   -o 表示测试输出

    2)执行命令生成我们的yaml模板
          命令:kubectl create deployment springboot-k8s --image=springboot-test-demo --dry-run -o yaml > deploy.yaml
          
          文件的内容如下:
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      creationTimestamp: null
      labels:
        app: springboot-k8s
      name: springboot-k8s
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: springboot-k8s
      strategy: {}
      template:
        metadata:
          creationTimestamp: null
          labels:
            app: springboot-k8s
        spec:
          containers:
          - image: springboot-test-demo
            name: springboot-test-demo
            resources: {}
    status: {}

4.下面我们以yaml文件的方式部署springboot项目

  1. 对上面生成的deploy.yaml文件进行修改,让它使用本地的镜像,因为它默认是去中心仓库拉取镜像的
  2. 通过命令去操作deploy.yaml文件
    命令:kubectl apply -f deploy.yaml


     
  3. 暴露端口
    命令:kubectl expose deployment springboot-k8s --port=8080 --type=NodePort
  4. 通过浏览器去查看效果,两台服务器都可以访问,注意:目前这里的对外端口是不固定的,后面我们可以通过ingress组件对外暴露一个固定的端口

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值