使用 Docker 运行 MinIO 客户端(mc)来进行 MinIO 服务器之间的数据迁移。这里是一步步的解析和说明:
-
拉取 MinIO 客户端 Docker 镜像:
docker pull minio/mc
这一步会从 Docker Hub 上拉取最新的 MinIO 客户端(mc)镜像。
-
运行 MinIO 客户端容器:
docker run -it --entrypoint /bin/bash minio/mc
这一步会以交互模式(
-it
)启动一个新的容器,并且将入口点(--entrypoint
)设置为/bin/bash
以便您可以进入容器内部进行操作。 -
设置 MinIO 客户端别名:
-
为旧的 MinIO 服务设置别名(
old
):mc alias set old http://192.168.31.128:9000 minioadmin minioadmin
这里,
http://192.168.31.128:9000
是旧的 MinIO 服务的地址,minioadmin
是默认的用户名和密码。 -
为新的 MinIO 服务设置别名(
new
):mc alias set new http://192.168.31.128:9001 minioadmin minioadmin
这里,
http://192.168.31.128:9001
是新的 MinIO 服务的地址,用户名和密码同样是minioadmin
。
-
-
使用 mc 进行数据镜像:
mc mirror --preserve --overwrite --remove old new
这一步会将
old
别名对应的 MinIO 存储桶中的数据镜像到new
别名对应的 MinIO 存储桶中。参数说明如下:--preserve
:保留文件属性。--overwrite
:覆盖目标存储桶中已存在的文件。--remove
:在源存储桶中删除已成功复制到目标存储桶中的文件。
请确保这两个 MinIO 服务是可以互相访问的,并且您已经对它们有足够的权限进行操作。在执行数据迁移之前,建议先对数据进行备份,以防意外丢失。