MinIO 是一种高性能的对象存储服务,兼容 Amazon S3 API,适用于私有云、边缘计算和大数据场景。通过 Docker 部署 MinIO,可以快速搭建一个可扩展的存储解决方案。本文将详细介绍如何在 Mac M1 设备上使用 Docker 部署 MinIO,包括操作步骤、命令示例及注意事项。
在开始之前,请确保你的 Mac M1 上已安装以下软件:
请访问 Docker 官方网站 下载并安装 Docker Desktop for Mac。安装完成后,打开 Docker Desktop,确保其正常运行。
在终端中运行以下命令,验证 Docker 是否已正确安装:
docker --version
如果安装成功,你将看到类似如下的输出:
Docker version 20.10.7, build f0df350
接下来,我们需要拉取 MinIO 的 Docker 镜像。在终端中运行以下命令:
docker pull minio/minio
这条命令将从 Docker Hub 下载最新的 MinIO 镜像。可以使用以下命令查看已下载的镜像:
docker images
为 MinIO 创建一个存储目录,以便它能在容器中持久化数据。在终端中执行以下命令:
mkdir -p ~/minio-data
此命令将在用户主目录下创建一个名为 minio-data 的目录,用于存储数据。
我们将使用 Docker 运行 MinIO 服务,下面是一个基本的运行命令:
docker run -d --name minio \
-p 9000:9000 \
-p 9001:9001 \
-v ~/minio-data:/data \
minio/minio server /data --console-address ":9001"
在启动容器后,你可以通过浏览器访问 MinIO 控制台。打开浏览器并输入:
http://localhost:9001
在控制台中,你需要提供 Access Key 和 Secret Key 进行登录。默认情况下,MinIO 会生成这两个密钥。你也可以在运行命令时自定义这些密钥:
docker run -d --name minio \
-p 9000:9000 \
-p 9001:9001 \
-v ~/minio-data:/data \
-e MINIO_ACCESS_KEY=youraccesskey \
-e MINIO_SECRET_KEY=yoursecretkey \
minio/minio server /data --console-address ":9001"
除了通过控制台访问,MinIO 还支持 S3 客户端的访问。以下是使用 AWS CLI 访问 MinIO 的步骤:
可以通过 Homebrew 安装 AWS CLI:
brew install awscli
运行以下命令配置 AWS CLI:
aws configure
输入 Access Key 和 Secret Key 以及地区(如 us-east-1)和输出格式类型(如 json)。
使用以下命令在 MinIO 中创建一个 bucket:
aws --endpoint-url http://localhost:9000 s3 mb s3://mybucket
其中 mybucket 是你希望创建的 bucket 名称。
可以使用以下命令将文件上传到 MinIO:
aws --endpoint-url http://localhost:9000 s3 cp yourfile.txt s3://mybucket/yourfile.txt
使用以下命令查看当前的 buckets:
aws --endpoint-url http://localhost:9000 s3 ls
要列出 bucket 中的文件:
aws --endpoint-url http://localhost:9000 s3 ls s3://mybucket
为了更简便的管理容器,我们可以使用 Docker Compose。首先在项目目录中创建 docker-compose.yml 文件:
version: '3.8'
services:
minio:
image: minio/minio
container_name: minio
ports:
- "9000:9000"
- "9001:9001"
volumes:
- ~/minio-data:/data
environment:
MINIO_ACCESS_KEY: youraccesskey
MINIO_SECRET_KEY: yoursecretkey
command: server /data --console-address ":9001"
然后在该目录下运行以下命令启动 MinIO:
docker-compose up -d
使用 Docker Compose 后,可以通过以下命令停止和删除服务:
docker-compose down
通过以上步骤,您已经成功在 Mac M1 上使用 Docker 部署了 MinIO 对象存储。利用该服务,您可以安全存储和管理数据,进一步探索 MinIO 的强大功能。在实际使用中,请根据需求配置和利用 MinIO 提供的多种选项。