$ wget -P /usr/bin https://dl.min.io/client/mc/release/linux-amd64/mc
$ chmod +x /usr/bin/mc
# 기본 버전 확인
$ mc --version
mc version RELEASE.2022-02-02T02-03-24Z
2. 기본 커맨드
Minio가 의도한 대로 작동하는지 확인 → http://[MinIO IP]:9000/
자격 증명을 입력
Access Key (액세스 키) : minio
Secret Key (비밀 키) : melovethanos
2.1. access key와 secret key를 MinIO client 등록
mc 모든 구성 정보를 ~/.mc/config.json파일에 저장
는 단순히 클라우드 스토리지 서비스의 짧은 이름
S3 엔드포인트, 액세스 및 비밀 키는 클라우드 스토리지 제공업체에서 제공
# set access key / secret key
# 형식 : mc alias set my-storage http://192.168.0.30:9001 ROOT_ACCESS_KEY_CHANGE_ME SECRET_ACCESS_KEY_CHANGE_ME
$ mc alias set hippo http://[MinIO IP]:9000 minio melovethanos
mc: Configuration written to `/root/.mc/config.json`. Please update your access credentials.
mc: Successfully created `/root/.mc/share`.
mc: Initialized share uploads `/root/.mc/share/uploads.json` file.
mc: Initialized share downloads `/root/.mc/share/downloads.json` file.
Added `hippo` successfully.
2.2. MinIO client로 bucket 생성
## bucket 생성
$ mc mb hippo/mctest
Bucket created successfully `hippo/mctest`.
2.3. MinIO client로 bucket 리스트 확인
## bucket 리스트 확인
$ mc ls hippo
[2022-02-03 01:22:49 KST] 0B hello/
[2022-02-04 02:55:46 KST] 0B mctest/
[2022-02-04 02:00:24 KST] 0B thanos/
2.4. MinIO client로 bucket에 파일 및 디렉토리 업로드
# upload
# 형식 : mc cp SOURCE ALIAS/PATH
# 파일 복사
$ mc cp ./Prometheus_Restart.sh hippo/hello/Prometheus_Restart.sh
..._Restart.sh: 115 B / 115 B ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 12.78 KiB/s 0s
# 성공적으로 파일 upload 확인
$ mc ls hippo/hello
[2022-02-04 03:04:44 KST] 115B STANDARD Prometheus_Restart.sh
# 디렉토리 복사
$ mc cp --recursive ./test hippo/hello/
..._Restart.sh: 578 B / 578 B ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 58.30 KiB/s 0s
# 성공적으로 디렉토리 upload 확인
$ mc ls hippo/hello/test
[2022-02-04 03:13:27 KST] 348B STANDARD Prometheus_Log_Clear.sh
[2022-02-04 03:13:27 KST] 115B STANDARD Prometheus_Log_View.sh
[2022-02-04 03:13:27 KST] 115B STANDARD Prometheus_Restart.sh
2.5. MinIO client로 bucket에 파일 및 디렉토리 삭제
# 디렉토리 내 리스트 확인
$ mc ls hippo/hello/test
[2022-02-04 03:13:27 KST] 348B STANDARD Prometheus_Log_Clear.sh
[2022-02-04 03:13:27 KST] 115B STANDARD Prometheus_Log_View.sh
[2022-02-04 03:13:27 KST] 115B STANDARD Prometheus_Restart.sh
# 형식 : mc rm ALIAS/PATH
# 파일 삭제
$ mc rm hippo/hello/test/Prometheus_Restart.sh
Removing `hippo/hello/test/Prometheus_Restart.sh`.
# 성공적으로 파일 삭제 확인
$ mc ls hippo/hello/test
[2022-02-04 03:13:27 KST] 348B STANDARD Prometheus_Log_Clear.sh
[2022-02-04 03:13:27 KST] 115B STANDARD Prometheus_Log_View.sh
# 형식 : mc rm --recursive --force ALIAS/PATH
# 디렉토리 삭제
$ mc rm --recursive --force hippo/hello/test
Removing `hippo/test/Prometheus_Log_Clear.sh`.
Removing `hippo/test/Prometheus_Log_View.sh`.
# 성공적으로 디렉토리 삭제 확인 -> hippo/hello/test 디렉토리 없음을 확인
$ mc ls hippo/hello
[2022-02-04 03:04:44 KST] 115B STANDARD Prometheus_Restart.sh
2.6. minio client로 bucket에 파일 다운로드 → 업로드와 위치만 변경
# download
# 형식 : mc cp my-storage/test.zip ~/test.zip
#위 cp 예제에서 source/target을 위치를 바꿈.
$ mc cp hippo/hello/Prometheus_Restart.sh /Prometheus_Restart.sh
..._Restart.sh: 115 B / 115 B ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 14.64 KiB/s 0s
# / 디렉토리 아래에 Prometheus_Restart.sh 파일 존재 확인
$ ls /Prometheus_Restart.sh
Prometheus_Restart.sh
3. 공유 파일 → 특정 파일을 특정일만 공유
공유기간을 설정후 카피 버튼을 클릭해서 복사후 공유
파일을 공유하기 위해 카피 버튼 클릭
Copy Link를 통해 접근 URL을 획득
4. 일반 웹서버처럼 공유 → 공유 기간을 무한정으로 설정
4.1. 버킷 자체를 public으로 설정
# 형식 : mc policy set public my-storage/test_bucket
$ mc policy set public hippo/hello
Access permission for `hippo/hello` is set to `public`
4.2. 버킷의 policy를 확인
$ mc policy get hippo/hello
Access permission for `hippo/hello` is `public`
4.3. 다운로드 테스트 → minio에서의 웹사이트 주소에는 minio client의 alias인 hippo는 제외
# minio 서버에 bucket 디렉토리가 바로 뒤로 붙음
$ wget http://[MinIO IP]:9000/hello/Prometheus_Restart.sh
--2022-02-04 03:33:43-- http://[MinIO IP]:9000/hello/Prometheus_Restart.sh
Connecting to [MinIO IP]:9000... connected.
HTTP request sent, awaiting response... 200 OK
Length: 115 [application/x-sh]
Saving to: ‘Prometheus_Restart.sh’
100%[===============================================>] 115 --.-K/s in 0s
2022-02-04 03:33:43 (7.72 MB/s) - ‘Prometheus_Restart.sh’ saved [115/115]