跳到主要内容

如何启用自定义文件对象存储

HAP支持使用自定义文件对象存储(基于 S3 标准,如:阿里云OSS、腾讯云COS、华为云OBS、七牛云等),以代替默认的存储服务(基于 MinIO)。仅需参考以下几步,即可启用。

  1. 创建配置文件 s3-config.json,模板如下(阿里云OSS为例):

    {
    "mode": 1,
    "accessKeyID": "${Key}",
    "secretAccessKey": "${Secret}",
    "bucketEndPoint": "oss-cn-beijing.aliyuncs.com",
    "bucketName": {
    "mdmedia": "oss-mdtest",
    "mdpic": "oss-mdtest",
    "mdpub": "oss-mdtest",
    "mdoc": "oss-mdtest"
    },
    "region": "oss-cn-beijing"
    }

    注意:目前HAP系统共使用 mdmediamdpicmdpubmdoc 4个 bucket,您可以在配置文件的 bucketName 字段中映射实际使用的 bucket

  2. 挂载配置

    单机模式下修改微服务应用对应的 docker-compose.yaml,集群模式下修改文件存储服务对应的 docker-compose.yaml

    volumes:    
    -${s3-config.json宿主机路径}:/usr/local/file/s3-config.json
  3. 初始化预制文件

    你可以使用各对象存储厂商所提供的工具,将 预制文件包 (如果是对已在使用中的HAP系统做文件存储迁移,则预制文件使用 /data/hap/script/volume/data/storage/data/ 目录下的资源)中的内容(mdmediamdpicmdpubmdoc 4个文件夹下的数据)根据 bucketName 映射关系上传到云端对应的 bucket 中。如:HAP 私有部署阿里云OSS初始化说明

  4. 重启HAP微服务