MinIO 搭建使用

MinIO簡介

MinIO 是一款基於Go語言的高性能對象存儲服務,在Github上已有19K+Star。它採用了Apache License v2.0開源協議,很是適合於存儲大容量非結構化的數據,例如圖片、視頻、日誌文件、備份數據和容器/虛擬機鏡像等。 本文將使用 MinIO 來自建一個對象存儲服務用於存儲圖片。html

安裝及部署

MinIO的安裝方式有不少,這裏咱們使用它在Docker環境下的安裝方式。git

  • 下載MinIO的Docker鏡像:
docker pull minio/minio
  • 在Docker容器中運行MinIO,這裏咱們將MiniIO的數據和配置文件夾掛在到宿主機上:
docker run -p 9090:9000 --name minio \ -v /etc/localtime:/etc/localtime \ -v /data/minio/data:/data \ -v /data/minio/config:/root/.minio \ -d minio/minio server /data 
  • 運行成功後,訪問該地址來登陸並使用MinIO,默認Access Key和Secret都是minioadmin:http://localhost:9090

minio

上傳文件及使用

經過使用MinIO的網頁端便可完成文件的上傳下載功能,下面咱們以圖片上傳下載爲例來演示下該功能。docker

  • 在存儲文件以前,咱們須要新建一個存儲桶:

minio

  • 存儲桶建立完成後,經過上傳按鈕能夠上傳文件,這裏咱們上傳一張圖片:

minio

  • 圖片上傳完成後,咱們能夠經過拷貝連接按鈕來獲取圖片訪問路徑,可是這只是個臨時的訪問路徑:

minio

  • 要想獲取一個永久的訪問路徑,須要修改存儲桶的訪問策略,咱們能夠點擊存儲桶右上角的編輯策略按鈕來修改訪問策略;

minio

  • 這裏有三種訪問策略能夠選擇,一種只讀、一種只寫、一種可讀可寫,這裏咱們選擇只讀便可,可是須要注意的是,訪問前綴須要設置爲*.*,不然會沒法訪問;

minio

  • 設置完成後,咱們只須要經過拷貝連接中的前一串路徑便可永久訪問該文件;

MinIO客戶端的使用

雖然MinIO的網頁端管理已經很方便了,可是官網仍是給咱們提供了基於命令行的客戶端MinIO Client(簡稱mc),下面咱們來說講它的使用方法。session

經常使用命令

下面咱們先來熟悉下mc的命令,這些命令和Linux中的命令有不少類似之處。ide

命令 做用
ls 列出文件和文件夾
mb 建立一個存儲桶或一個文件夾
cat 顯示文件和對象內容
pipe 將一個STDIN重定向到一個對象或者文件或者STDOUT
share 生成用於共享的URL
cp 拷貝文件和對象
mirror 給存儲桶和文件夾作鏡像
find 基於參數查找文件
diff 對兩個文件夾或者存儲桶比較差別
rm 刪除文件和對象
events 管理對象通知
watch 監聽文件和對象的事件
policy 管理訪問策略
session 爲cp命令管理保存的會話
config 管理mc配置文件
update 檢查軟件更新
version 輸出版本信息

安裝及配置

因爲MinIO服務端中並無自帶客戶端,因此咱們須要安裝配置完客戶端後才能使用,這裏以Docker環境下的安裝爲例。性能

  • 下載MinIO Client 的Docker鏡像:
docker pull minio/mc
  • 在Docker容器中運行mc:
docker run -it --entrypoint=/bin/sh minio/mc 
  • 運行完成後咱們須要進行配置,將咱們本身的MinIO服務配置到客戶端上去,配置的格式以下:
mc config host add <ALIAS> <YOUR-S3-ENDPOINT> <YOUR-ACCESS-KEY> <YOUR-SECRET-KEY> <API-SIGNATURE>
  • 對於咱們的MinIO服務能夠這樣配置:
mc config host add minio http://localhost:9000 minioadmin minioadmin S3v4

經常使用操做

  • 查看存儲桶和查看存儲桶中存在的文件:
# 查看存儲桶 mc ls minio # 查看存儲桶中存在的文件 mc ls minio/blog 

minio

  • 建立一個名爲test的存儲桶:
mc mb minio/test
  • 共享avatar.png文件的下載路徑:
mc share download minio/blog/avatar.png
  • 查找blog存儲桶中的png文件:
mc find minio/blog --name "*.png" 
  • 設置test存儲桶的訪問權限爲只讀
# 目前能夠設置這四種權限:none, download, upload, public mc policy set download minio/test/ # 查看存儲桶當前權限 mc policy list minio/test/ 

參考資料

詳細瞭解MinIO能夠參考官方文檔:https://docs.min.io/cn/minio-quickstart-guide.htmlui

原文出處:https://www.cnblogs.com/burningmyself/p/12172760.htmlspa

相關文章
相關標籤/搜索