YouTube 摘要:使用 Go 部署 MinIO

在我们最近的报道中,我们讨论了 MJ 的“管理员必备”课程。本期将介绍 Will Dinyes 为希望在其工作 Go(有时称为 Golang)环境中部署 MinIO 的用户提供的系列课程。
这十二个视频时长不到一小时——信息量很大,但很容易理解。唯一的先决条件是对 Go 及如何导入基本包有一个大致的了解。学习者可以按顺序观看视频作为播放列表,但每个视频都设计为一个 3-5 分钟的独立的即时学习资源,供那些使用 Go 启动 MinIO 的人使用。在课程结束时,开发人员将能够执行对象存储所需的所有基本任务,以及调整和自定义这些任务的输出以满足其需求。
首先,我们从基础开始:使用 Go 连接到 MinIO。这段非常简短的视频介绍了在准备 MinIO 客户端时设置 Go 环境的步骤,然后使用 MinIO Go SDK 通过简单的命令连接 MinIO。
Will 的后续视频涵盖了上传和下载使用 Go 从 MinIO 中获取文件。这适用于不熟悉 FPutObject 和 FGetObject 函数(分别用于上传和下载文件)以及 PutObjectOptions 和 GetObjectOptions 结构体(用于在上传或下载对象时定义变量)的开发人员,在深入了解 MinIO 的更复杂功能之前,了解所有这些都是至关重要的。
接下来是使用 Go 将文件从 MinIO 上传到网页。这个非常容易理解——Will 展示了如何将文件作为对象上传到网页,然后如何列出文件并显示它们。
接着是使用 Go 创建 MinIO 桶。在这里,Will 讲解了如何使用 MakeBucket 函数创建一个存储对象的桶,以及如何使用 BucketExists 函数跟踪桶并测试它们是否已创建。
合乎逻辑的下一步是使用 Go 监视 MinIO 中的桶,允许用户在桶中定位特定事件,例如创建、访问或删除对象。一旦环境启动并运行,用户可以使用 ListenBucketNotification 函数查看桶内任何活动的通知。同样重要的是要注意 ListenNotification 函数,它提供类似的通知,但不受限于桶。
系列中的下一个视频是如何使用 Go 删除 MinIO 对象,使用 RemoveObject 函数和 RemoveObjectOptions 结构体。Will 展示了如何不仅删除对象,还使用版本 ID 删除这些对象的特定版本。
接下来是使用 Go 列出 MinIO 中的对象,Will 讨论了如何使用 ListObjects 函数和 ListObjectOptions 结构体,以及如何处理列表返回的结果。列出桶中的对象是一个简单的函数,但要查看版本 ID 或根据用户的特定需求定制列表,用户必须使用 ListObjectOptions 结构体——仍然很简单,但了解区别很重要。
这似乎有很多信息需要处理,但视频很短,我们现在已经完成了一半以上。接下来是上传和下载使用 Go 从 MinIO 中获取流,使用 GetObject 函数(不要与 FGetObject 混淆)返回特定的流,并使用 GetObjectOptions 结构体从这些流中获取特定范围的值。
到目前为止,模式应该很明显了——如果任何事情看起来很复杂或令人生畏,请记住,大多数这些任务只是使用一个函数来获取所需内容,并使用一个结构体进行自定义。与此一致,我们的第八个视频是关于使用 ListBuckets 函数和 BucketInfo 结构体来使用 Go 在 MinIO 中列出桶。
本系列的最后一个视频详细介绍了如何使用 Go 在 MinIO 中复制对象。复制对象利用 CopyObjects 函数,该函数有两个选项结构体:CopySrcOptions(用于源)和 CopyDestOptions(用于目标)。
这几乎涵盖了所有内容。在 Go 环境中工作的开发人员可以使用这些视频来练习有效利用 MinIO 所需的所有基础知识,然后将其部署到生产环境中,无论工作是什么。有关在任何环境中安装、运行和使用 MinIO 的更多详细信息,请参阅此处的文档。要了解有关 MinIO 的更多信息或参与我们的社区,请访问 min.io 或加入我们的公共 Slack 频道。如果您想查看其他摘要,可以使用YouTube 摘要标签。