개요

mc 는 Command line 용 Minio Client 로 MinIO 서버나 AWS 의 S3 에 연결해서 여러 가지 작업을 할 수 있습니다.


각 OS 용 바이너리 실행 바이너리는 https://min.io/download 에서 받을 수 있습니다.


별도의 설치 프로그램은 제공되지 않으며 다운받은 mc 를 실행 속성을 준 후에 바로 실행하면 됩니다.


실행시 아무 명령어를 주지 않으면 전체 명령어 목록과 사용법에 대한 안내가 표시됩니다.

$ mc

NAME:
  mc - MinIO Client for cloud storage and filesystems.

USAGE:
  mc [FLAGS] COMMAND [COMMAND FLAGS | -h] [ARGUMENTS...]

COMMANDS:
  ls       list buckets and objects
  mb       make a bucket
  rb       remove a bucket
  cat      display object contents
...


설정 

host 관리

mc config host add ALIAS URL ACCESSKEY SECRETKEY 명령어로 새로운 호스트를 추가할 수 있습니다. 예로 다음 명령은 localminio 라는 이름으로 추가합니다. 

$ mc config host add localminio http://192.168.0.231:9000 WS3S8YNQDQHF29VZXJYI ktxjVXIfIk+xY27kayBMYmfOoEgF4gYQi20Iowmt 


등록한 호스트 목록을 보려면 ls 명령을 실행합니다.

$ mc config host ls

gcs       
  URL       : https://storage.googleapis.com
  AccessKey : YOUR-ACCESS-KEY-HERE
  SecretKey : YOUR-SECRET-KEY-HERE
  API       : S3v2
  Lookup    : dns

localminio
  URL       : http://192.168.0.231:9000
  AccessKey : KEY
  SecretKey : SECRET
  API       : s3v4
  Lookup    : auto


등록한 호스트 삭제는 remove 또는 rm 을 사용하면 됩니다.

$ mc config host rm localminio


bucket 관리

mc mb [FLAGS] TARGET [TARGET...] 명령으로 새로운 버킷을 만들수 있습니다. 


다음 명령어는 위에서 설정한 localminio 서버에 abc 라는 버킷과 그 아래에 dfg 라는 버킷을 만듭니다.

bucket 생성
$ mc mb localminio/abc/dfg/

bucket 은 반드시 / 로 끝나야 하며 아닐 경우 에러가 발생합니다..


버킷의 목록을 보려면 ls 명령어를 사용합니다.

$ mc ls localminio/
        
[2019-08-13 14:16:56 KST]      0B abc/
[2019-08-13 10:58:41 KST]      0B mybucket/


policy

minio 는 기본 버킷 접근 정책이 public 이 아니므로 URL 로 바로 객체이 접근이 안 됩니다. 

laravel 의 storage 에서 객체를 등록하고 바로 접속하려면 아래 명령으로 버킷의 정책을 public 으로 설정해야 합니다. 

$ mc policy public localminio/mybucket


같이 보기

Ref