banner
stmoonar

stmoonar

无心而为
github
telegram
email
zhihu
x

minio物件儲存搭建(docker)

之前寫 markdown 圖片存在本地文件夾,時間一長就會造成文件夾十分臃腫,很多空間都是圖片佔了,同步起來很費時,而且傳到在線平台時不會自動上傳本地圖片,還是要手動一張一張處理上傳,但是如果存在雲端,本地只要存一個 url 就可以預覽,而且各個平台也能兼容,而不是顯示一個毫無意義的本地路徑。

於是我嘗試將筆記的圖片上傳到雲端,最好是粘貼的時候就可以自動上傳。其實像我用的typoraobsidian都有這個功能,但是需要有 OSS(對象存儲),阿里雲這些雲廠商都有賣。但是,我有一台自己的伺服器還花錢買 OSS 嗎?

於是我就尋找開源的 OSS 平台搭建,然後就找到了minio,功能十分強大,並且使用 docker 搭建步驟十分簡單。

1. 準備#

首先需要有一台雲伺服器 / VPS,阿里雲騰訊雲這些也行,沒有的可以看我推薦國外性價比比較高的:https://www.stmoonar.me/?p=6

然後安裝 docker

curl -fsSL https://get.docker.com | bash -s docker

2. docker 部署#

接著創建一個目錄用來存放 minio 的數據,可以根據自己需要選擇放在哪:

mkdir -p ~/minio/data

這樣就可以直接啟動了容器了

docker run \
   -p 9000:9000 \
   -p 9001:9001 \
   --name minio \
   -v ~/minio/data:/data \
   -e "MINIO_ROOT_USER=ROOTNAME" \
   -e "MINIO_ROOT_PASSWORD=CHANGEME123" \
   quay.io/minio/minio server /data --console-address ":9001"

-p 9000:9000 -p 9001:9001 這是將容器端口映射到伺服器端口,前一個是服務後台的端口,後一個是客戶端也就是 api 接口訪問的端口。

-v ~/minio/data:/data這個如果和你創建的目錄不一樣就改一下。

-e "MINIO\_ACCESS\_KEY=minioadmin" 用戶名,-e "MINIO\_SECRET\_KEY=minioadmin" 密碼,這兩個地方自己手動修改一下。

3. 訪問#

上一步完成我們就可以直接訪問了,使用ip:9000就可以進入後台,輸入剛剛設置的用戶名和密碼登錄。

image

登錄之後創建 Buckets、創建 Access Keys 這些操作就和普通的 OSS 後台差不多了,可以手動上傳文件。

image

現在還需要在一個客戶端軟件(在這裡是我們的 markdown 筆記軟件)填寫好這些配置就可以不用到瀏覽器來上傳文件了。

4. 域名#

現在返回的圖片鏈接都是 ip+port 作為 host,如果覺得難看想用自己的域名的話,就需要在nginx 配置文件裡面設置反向代理,將 DNS 解析來的域名代理到 9001 端口。

還可以進一步配置 ssl 證書,這樣就可以使用 https 協議訪問存儲的文件了。

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。