想用 S3 这类存储,又不想花钱。那么我们可以通过 MinIO 来完成我们的需求。
什么是 MinIO
MinIO 是一款高性能、分布式、开源的对象存储服务器,支持 S3 API。它是专门为大规模私有云基础架构和容器化环境而设计的,并且具有高可用性、可扩展性和数据安全性等特点。
MinIO 可以在常见操作系统(如 Linux、Windows 和 macOS)上运行,也可以在容器化环境中使用(如 Docker、Kubernetes 等)。它支持多种数据保护机制,如端到端加密、访问策略、限制访问时间、IP 地址白名单、防止跨站点请求伪造(CSRF)攻击等。
除此之外,MinIO 还具备灵活的部署和配置方式,可以将数据存储在本地磁盘或云存储中,支持多种编程语言的 SDK,还提供了可视化的 Web 界面和命令行界面,方便用户管理和使用。
总之,MinIO 是一个功能强大、易于使用、开源免费的对象存储服务器,可以帮助用户搭建私有云存储平台、构建云原生应用和实现数据的安全存储与管理。
MinIO 的部署形式
MinIO 有以下几种搭建形式:
- 单节点部署:在一台物理主机或虚拟机上运行 MinIO,可以使用 Docker 镜像或二进制包安装。
- 分布式部署:在多台物理主机或虚拟机上运行多个 MinIO 实例,以实现负载均衡和高可用性。可以使用 Docker Swarm、Kubernetes 等容器编排工具进行集群管理。
- 网关模式部署:在 MinIO 的对象存储服务器前端加上 Nginx、Apache 等反向代理服务器,可以为 MinIO 对象存储提供额外的功能支持,如 SSL/TLS 加密、访问控制、IP 访问限制等。
- 缓存模式部署:在 MinIO 对象存储服务器前端添加 Redis、Memcached 等缓存层,可以为 MinIO 提供更高的读写性能和更低的延迟。
无论是单节点还是多节点分布式部署,MinIO 都可以在 Linux、Windows 和 macOS 等常见操作系统上运行,部署方式也灵活多变,可以根据实际需求进行选择。
MinIO Docker 形式部署
要在 Docker 中安装 MinIO,可以按照以下步骤操作:
- 获取 MinIO 的 Docker 镜像
|
|
- 创建 MinIO 容器
|
|
这里创建了一个名为 minio
的容器,暴露了 9000 端口,将数据目录 /mnt/data
挂载到容器的 /data
目录,将配置文件目录 /mnt/config
挂载到容器的 /root/.minio
目录。还设置了 MINIO_ROOT_USER
和 MINIO_ROOT_PASSWORD
环境变量,这将用于访问 MinIO Web 界面。账号密码这里也可以不设置,不设置运行之后默认的账号密码都是 minioadmin。
3. 访问 MinIO Web 界面
在浏览器中访问 http://localhost:9000,使用上一步设置的用户名和密码登录,然后你就可以开始对 MinIO 进行配置和使用了。
希望能对你有所帮助!