【问题标题】:Saving photos and documents outside the application path and deploy kubernetes将照片和文档保存在应用程序路径之外并部署 kubernetes
【发布时间】:2022-06-16 16:26:13
【问题描述】:

我有一个 spring boot 项目,将员工照片和其他文档保存在“C:\Program Files\Apache Software Foundation\Tomcat 8.0\webapps\employee”路径中,并将文件名存储在数据库中。然后我在端口 8085 上运行相应的 Tomcat 8.0。
因此,我的前端可以通过在 http://localhost:8085/employee/photosOrDocNameFromDb 上请求轻松访问这些照片和文件。 问题是我的客户想通过 Kubernetes 部署它。所以,我对如何在 Kubernetes 上部署 Spring Boot 应用程序有了一些想法,但是我保存在本地文件系统上的那些图像和文档呢?
显然,如果我将图像保存在 pod 中,我无法像以前那样访问它(运行一个虚拟的 tomcat 以通过 URL 公开它)。 我的 Kubernetes 部署的 Spring Boot 应用程序有什么方法可以访问本地文件系统吗?这样我就可以在该位置运行另一个 tomcat 来访问这些图像和文档。 关于如何解决这个问题的任何想法。我应该使用另一个 pod 来保存这些图像吗?这种情况下,我必须从部署应用程序的 pod 访问另一个 pod 文件系统。

【问题讨论】:

    标签: spring spring-boot kubernetes photo


    【解决方案1】:

    您可以为此使用 Persistent Volumes。

    持久卷的类型

    PersistentVolume 类型作为插件实现。 Kubernetes 目前支持以下插件:

    awsElasticBlockStore - AWS 弹性块存储 (EBS)
    azureDisk - Azure 磁盘
    azureFile - Azure 文件
    cephfs - CephFS 卷
    csi - 容器存储接口 (CSI)
    fc - 光纤通道 (FC) 存储
    gcePersistentDisk - GCE 持久磁盘
    Glusterfs - Glusterfs 体积
    hostPath - HostPath 卷(仅用于单节点测试;不会在 a
    中工作 多节点集群;考虑改用本地卷)
    iscsi - iSCSI(基于 IP 的 SCSI)存储
    local - 安装在节点上的本地存储设备。
    nfs - 网络文件系统 (NFS) 存储
    portworxVolume - Portworx 卷
    rbd - Rados 块设备 (RBD) 卷
    vsphereVolume - vSphere VMDK 卷

    更多详情请见https://kubernetes.io/docs/concepts/storage/persistent-volumes/。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-14
      • 1970-01-01
      • 2011-09-03
      相关资源
      最近更新 更多