【问题标题】:MINIO Is it possible to set automatic deletion from bucket of the object after the retention date?MINIO 是否可以设置在保留日期之后从对象的存储桶中自动删除?
【发布时间】:2021-09-02 13:56:18
【问题描述】:

我想在保留日期结束后删除对象。 我可以用 Bucket Lifecycle 来做吗?如果有,怎么做?

第二个问题,如果有更新的对象可以自动删除吗?

【问题讨论】:

  • 请提供足够的代码,以便其他人更好地理解或重现问题。

标签: minio


【解决方案1】:

这仅适用于版本化存储桶

在存储桶上启用对象生命周期配置以设置在 specified number of daysspecified date 之后自动删除对象。

示例: 创建存储桶生命周期配置,使前缀 old/ 下的对象在 2020-01-01T00:00:00.000Z 日期过期,temp/ 下的对象在 7 天后过期。

使用mc启用存储桶生命周期配置:

{
  "Rules": [{
      "Expiration": {
        "Date": "2020-01-01T00:00:00.000Z"
      },
      "ID": "OldPictures",
      "Filter": {
        "Prefix": "old/"
      },
      "Status": "Enabled"
    },
    {
      "Expiration": {
        "Days": 7
      },
      "ID": "TempUploads",
      "Filter": {
        "Prefix": "temp/"
      },
      "Status": "Enabled"
    }
  ]
}

同样可以在:https://docs.min.io/docs/minio-bucket-lifecycle-guide.html中找到

删除非当前版本

{
    "Rules": [
        {
            "ID": "Removing all old versions",
            "Filter": {
                "Prefix": "users-uploads/"
            },
            "NoncurrentVersionExpiration": {
                "NoncurrentDays": 365
            },
            "Status": "Enabled"
        }
    ]
}

【讨论】:

  • 是的,但这是所有存储桶上的配置。而且我有很多不同日期的对象。
  • 您可以使用天数选项而不是硬编码日期。
  • 您可以在对象级别(putObject)应用生命周期规则
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-07
  • 2019-08-05
  • 1970-01-01
  • 2017-01-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多