本文主要分享了如何搭建一個類似阿里云OSS的對象存儲服務(wù)器。
以windows環(huán)境下MinIO的搭建舉例說明,linux環(huán)境下的搭建網(wǎng)上也有很多教程,請自行搜索相關(guān)資料。
一、下載
地址:https://min.io/download#/windows
下載minio.exe即可(注意不要直接雙擊打開,會運(yùn)行失敗)
二、部署
在minio.exe同級目錄創(chuàng)建目錄/data用于存儲數(shù)據(jù)文件
cmd命令:minio.exe server data
1.驗(yàn)證是否啟動成功,訪問: http://localhost:9000(用戶名/密碼:minioadmin/minioadmin)
2.登錄成功后看到以下界面
三、使用
1.創(chuàng)建bucket,名稱建議有區(qū)分度(程序中可以根據(jù)不同應(yīng)用、不同環(huán)境建立不同的bucket)
MinIO的數(shù)據(jù)會存儲在剛才啟動命令中指定的/data目錄
2.應(yīng)用程序賬號,使用Identity->Service Accounts功能(當(dāng)然應(yīng)用程序也可以使用Users來認(rèn)證)
請記錄好Access Key和Secret Key,用于應(yīng)用程序的認(rèn)證
3.如果需要使用子賬號,使用Identity->Users功能
4.如果需要實(shí)現(xiàn)圖片的訪問是開放的,但是上傳圖片必須要有訪問控制,可以利用bucket的Access Policy來實(shí)現(xiàn)
選擇Custom選項(xiàng),json內(nèi)容填寫如下
四、springboot整合MinIO
1.pom依賴
io.minio
minio
7.1.4
2.初始化MinIO客戶端核心代碼
3.文件上傳核心代碼
如果需要按照目錄來存儲文件,objectName可以使用folder1/folde2/../333.jpg這樣的格式
4.文件上傳后獲取訪問鏈接核心代碼
5.執(zhí)行完上傳代碼,就可以獲取到以下格式的圖片地址
http://127.0.0.1:9000/buket-template/333.jpg
http://127.0.0.1:9000/buket-template/folder1/folde2/../333.jpg
怎么樣?如果你覺得有用的話,還不快快收藏起來!!!
附:涉及的代碼目錄
gitee:https://gitee.com/jq_di/springcloud-template
springcloud-template
└── template-web
└── file
└── alIOSs -- 阿里云實(shí)現(xiàn)的OSS存儲
└── minio -- MinIO實(shí)現(xiàn)的OSS存儲