Minio客户端快速入门指南

SlackGo Report CardDocker Pulls

Minio Client (mc)为ls,cat,cp,mirror,diff,find等UNIX命令提供了一种替代方案。它支持文件系统和兼容Amazon S3的云存储服务(AWS Signature v2和v4)。

  1. ls 列出文件和文件夹。
  2. mb 创建一个存储桶或一个文件夹。
  3. cat 显示文件和对象内容。
  4. pipe 将一个STDIN重定向到一个对象或者文件或者STDOUT
  5. share 生成用于共享的URL
  6. cp 拷贝文件和对象。
  7. mirror 给存储桶和文件夹做镜像。
  8. find 基于参数查找文件。
  9. diff 对两个文件夹或者存储桶比较差异。
  10. rm 删除文件和对象。
  11. events 管理对象通知。
  12. watch 监听文件和对象的事件。
  13. policy 管理访问策略。
  14. session cp命令管理保存的会话。
  15. config 管理mc配置文件。
  16. update 检查软件更新。
  17. version 输出版本信息。

Docker容器

稳定版

  1. docker pull minio/mc
  2. docker run minio/mc ls play

尝鲜版

  1. docker pull minio/mc:edge
  2. docker run minio/mc:edge ls play

注意: 上述示例默认使用Minio演示环境做演示,如果想用mc操作其它S3兼容的服务,采用下面的方式来启动容器:

  1. docker run -it --entrypoint=/bin/sh minio/mc

然后使用mc config命令

macOS

Homebrew

使用Homebrew安装mc。

  1. brew install minio/stable/mc
  2. mc --help

GNU/Linux

下载二进制文件

平台 CPU架构 URL
GNU/Linux 64-bit Intel https://dl.minio.io/client/mc/release/linux-amd64/mc
  1. chmod +x mc
  2. ./mc --help

Microsoft Windows

下载二进制文件

平台 CPU架构 URL
Microsoft Windows 64-bit Intel https://dl.minio.io/client/mc/release/windows-amd64/mc.exe
  1. mc.exe --help

通过源码安装

通过源码安装仅适用于开发人员和高级用户。mc update命令不支持基于源码安装的更新通知。请从https://minio.io/downloads/#minio-client下载官方版本。

如果您没有Golang环境,请参照如何安装Golang

  1. go get -d github.com/minio/mc
  2. cd ${GOPATH}/src/github.com/minio/mc
  3. make

添加一个云存储服务

如果你打算仅在POSIX兼容文件系统中使用mc,那你可以直接略过本节,跳到日常使用

添加一个或多个S3兼容的服务,请参考下面说明。mc将所有的配置信息都存储在~/.mc/config.json文件中。

  1. mc config host add <ALIAS> <YOUR-S3-ENDPOINT> <YOUR-ACCESS-KEY> <YOUR-SECRET-KEY> <API-SIGNATURE>

别名就是给你的云存储服务起了一个短点的外号。S3 endpoint,access key和secret key是你的云存储服务提供的。API签名是可选参数,默认情况下,它被设置为"S3v4"。

示例-Minio云存储

从Minio服务获得URL、access key和secret key。

  1. mc config host add minio http://192.168.1.51 BKIKJAA5BMMU2RHO6IBB V7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12 S3v4

示例-Amazon S3云存储

参考AWS Credentials指南获取你的AccessKeyID和SecretAccessKey。

  1. mc config host add s3 https://s3.amazonaws.com BKIKJAA5BMMU2RHO6IBB V7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12 S3v4

示例-Google云存储

参考Google Credentials Guide获取你的AccessKeyID和SecretAccessKey。

  1. mc config host add gcs https://storage.googleapis.com BKIKJAA5BMMU2RHO6IBB V8f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12 S3v2

注意:Google云存储只支持旧版签名版本V2,所以你需要选择S3v2。

验证

mc预先配置了云存储服务URL:https://play.minio.io:9000,别名“play”。它是一个用于研发和测试的Minio服务。如果想测试Amazon S3,你可以将“play”替换为“s3”。

示例:

列出https://play.minio.io:9000上的所有存储桶。

  1. mc ls play
  2. [2016-03-22 19:47:48 PDT] 0B my-bucketname/
  3. [2016-03-22 22:01:07 PDT] 0B mytestbucket/
  4. [2016-03-22 20:04:39 PDT] 0B mybucketname/
  5. [2016-01-28 17:23:11 PST] 0B newbucket/
  6. [2016-03-20 09:08:36 PDT] 0B s3git-test/

日常使用

Shell别名

你可以添加shell别名来覆盖默认的Unix工具命令。

  1. alias ls='mc ls'
  2. alias cp='mc cp'
  3. alias cat='mc cat'
  4. alias mkdir='mc mb'
  5. alias pipe='mc pipe'
  6. alias find='mc find'

Shell自动补全

你也可以下载autocomplete/bash_autocomplete/etc/bash_completion.d/,然后将其重命名为mc。别忘了在这个文件运行source命令让其在你的当前shell上可用。

  1. sudo wget https://raw.githubusercontent.com/minio/mc/master/autocomplete/bash_autocomplete -O /etc/bash_completion.d/mc
  2. source /etc/bash_completion.d/mc
  1. mc <TAB>
  2. admin config diff ls mirror policy session update watch
  3. cat cp events mb pipe rm share version

了解更多

请遵守Minio贡献者指南

原文: https://docs.minio.io/cn/minio-client-quickstart-guide.html