簡述
FastDFS是一個(gè)開源的輕量級(jí)分布式文件系統(tǒng),它的主要功能包括:文件存儲(chǔ)、文件同步官套、文件訪問(文件上傳、文件下載)等蚁孔,解決了大容量存儲(chǔ)和負(fù)載均衡的問題奶赔。特別適合以文件為載體的在線服務(wù),如相冊(cè)網(wǎng)站杠氢、視頻網(wǎng)站等等站刑。
Github項(xiàng)目地址:https://github.com/happyfish100/fastdfs
架構(gòu)圖
架構(gòu)圖
安裝步驟
- 我這里采用下載量最多的
season/fastdfs
鏡像,版本隨意
# 運(yùn)行tracker跟蹤服務(wù)鼻百,默認(rèn)端口為22122绞旅,映射`/fastdfs/tracker /data`以保留數(shù)據(jù)
docker run -it -d --name tracker \
-v ~/usr/local/docker/tracker_data:/fastdfs/tracker/data \
--net=host season/fastdfs:1.2 tracker
# 運(yùn)行storage存儲(chǔ)服務(wù),綁定tracker跟蹤服務(wù)的ip與端口(此處并未生效,原因未知需手動(dòng)修正)
docker run -it -d --name storage \
-v ~/usr/local/docker/storage_data:/fastdfs/storage/data \
-v ~/usr/local/docker/store_path:/fastdfs/store_path \
--net=host -e TRACKER_SERVER:你的trackerIP:22122 season/fastdfs:1.2 storage
演示圖如下:
安裝演示
手動(dòng)修改storage綁定tracker的IP:
# 1.從容器復(fù)制配置文件到宿主機(jī)
docker cp storage:/fdfs_conf/storage.conf ~/
# 2.修改配置文件
vim ~/storage.conf → 找到tracker_server=你的tracker機(jī)ip:22122
# 3.將文件拷貝回docker容器
docker cp ~/storage.conf storage:/fdfs_conf/
# 4.重啟存儲(chǔ)服務(wù)
docker restart storage
# 5.進(jìn)入storage容器
docker exec -it storage bash
# 6.查看storage的狀態(tài)
cd fdfs_conf/ && fdfs_monitor storage.conf
修改前
修改后
測(cè)試上傳功能
# 啟用FastDFS客戶端工具
docker run -itd --name fdfs_sh --net=host season/fastdfs:1.2 sh
# 替換storage配置文件
docker cp ~/storage.conf fdfs_sh:/fdfs_conf/
# 進(jìn)入客戶端容器
docker exec -it fdfs_sh bash
# 創(chuàng)建一個(gè)文件測(cè)試上傳用
touch a.txt
# 進(jìn)入配置文件夾 温艇,上傳文件
cd fdfs_conf/ && fdfs_upload_file storage.conf /a.txt
上傳測(cè)試
文件所在
后記
- 遇到端口被占用可以使用:
netstat -tunlp|grep 端口號(hào)
查看進(jìn)程 - 一定要開放防火墻
-
season/fastdfs:latest
版本因悲,其中不包含nginx,但不影響其他功能