在Kubernetes(K8s)上部署Spring Boot应用打包jar文件)的基本步骤如下

1. 准备Spring Boot应用的Jar

确保你的Spring Boot应用已经成功构建生成了可执行jar包。

2. 创建Docker镜像

为你的Spring Boot应用创建一个Docker镜像

  1. 创建Dockerfile:在Spring Boot应用的根目录创建一个Dockerfile。这个文件描述了如何构建你的Spring Boot应用的Docker镜像

    示例Dockerfile:

    FROM openjdk:8-jdk-alpine
    ARG JAR_FILE=target/*.jar
    COPY ${JAR_FILE} app.jar
    ENTRYPOINT ["java","-jar","/app.jar"]
    
  2. 构建Docker镜像运行以下命令构建Docker镜像

    docker build -t my-springboot-app:latest .
    
  3. 推送镜像仓库:将构建好的镜像推送到Docker镜像仓库,如Docker Hub私有仓库

    docker tag my-springboot-app:latest [YOUR_DOCKERHUB_NAME]/my-springboot-app:latest
    docker push [YOUR_DOCKERHUB_NAME]/my-springboot-app:latest
    

3. 在Kubernetes部署Spring Boot应用

  1. 创建部署配置文件:创建一个Kubernetes部署文件(YAML),定义如何在K8s上运行你的Spring Boot应用。

    示例deployment.yaml:

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: my-springboot-app
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: my-springboot-app
      template:
        metadata:
          labels:
            app: my-springboot-app
        spec:
          containers:
          - name: my-springboot-app
            image: [YOUR_DOCKERHUB_NAME]/my-springboot-app:latest
            ports:
            - containerPort: 8080
    
  2. 创建服务配置文件:如果你的应用需要对外提供服务,创建一个服务配置文件(YAML)。

    示例service.yaml:

    apiVersion: v1
    kind: Service
    metadata:
      name: my-springboot-app-service
    spec:
      type: NodePort
      ports:
        - port: 8080
          nodePort: 30007
      selector:
        app: my-springboot-app
    
  3. 部署到Kubernetes集群

    kubectl apply -f deployment.yaml
    kubectl apply -f service.yaml
    
  4. 验证部署检查部署状态和服务是否正常运行。

    kubectl get deployments
    kubectl get pods
    kubectl get service
    

4. 访问Spring Boot应用

如果一切设置正确,你的Spring Boot应用现在应该在Kubernetes集群中运行了。你可以通过配置的NodePort(如30007)访问你的应用。

请确保根据实际情况调整上述Dockerfile和Kubernetes配置文件中的参数例如镜像名称标签端口等。这些步骤提供了基础的指南,但可能需要根据实际情况进行微调

原文地址:https://blog.csdn.net/sunyuhua_keyboard/article/details/134744517

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_44970.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注