docker下的FastDFS分布式檔案伺服器

2021-09-01 13:27:03 字數 1673 閱讀 1474

專案需要儲存海量小檔案,傳統方法是上傳到某個磁碟中的資料夾,但是對於大量的小檔案,這種方式不可取。所以打算採用分布式檔案系統。

分布式檔案系統:顧名思義,他是可以集群的。我選用fastdfs伺服器儲存檔案

使用docker搭建fastdfs檔案伺服器:

虛擬機器安裝docker:yum install docker-engine執行docker pull morunchang/fastdfs拉取檔案伺服器的映象

檢視是否拉取成功:docker images執行trackerdocker run -d --name tracker --net=host morunchang/fastdfs sh tracker.sh執行storagedocker run -d --name storage --net=host -e tracker_ip=:22122 -e group_name=《自定義組名》 morunchang/fastdfs sh storage.sh檢視是否成功啟動:docker ps

可以看到成功啟動了

8. 修改nginx的配置,不攔截上傳內容:

fastdfs內建nginx

//新增修改內容

location /group1/m00

我對tracker和storage的理解是:

tracker是fastdfs客戶端用來和storage通訊的媒介

客戶端大部分的操作過程是先通過查詢tracker,從tracker返回具體的storageip,然後連線返回的storageip,執行具體的操作。

在tracker.conf中有關upload storage選擇的相關配置

1)選擇upload的group

0:表示所有的group以輪詢方式選擇

1:指定group,該group的名稱由store_group配置指定

2:負載均衡,表示選擇空餘容量最大的group

2)選擇group中的storage

0:group中的所有的storage輪詢選擇

2:根據優先順序配置(在每個storage.conf中的upload_priority配置)

3)選擇storage中的store_path

0:對所有的store path進行輪詢

1:負載均衡,選擇空閒空間最大的store_path

springboot整合fastdfs時的乙個坑,linux對外暴露的埠有:8080,22122,23000,幾乎沒人提到23000埠,這其實是storage的預設埠。

不使用docker搭建fastdfs的一些坑:

1.fastdfs_nginx_module的版本號和fastdfs不相容,5.0.5對應1.16

2.cd fastdfs-nginx-module/src 下的config檔案配置問題:

3.配置storage的nginx訪問路徑時,nginx的配置檔案中加user root;不然會報nginx 404

Docker下FastDFS環境搭建

本文使用docker進行搭建。拉取映象 docker pull delron fastdfs 建立tracker容器 docker create network host name tracker restart always v fdfs tracker var fdfs delron fastd...

使用Docker安裝FastDFS

可以利用已有的fastdfs docker映象來執行fastdfs。docker image pull delron fastdfs也可是直接使用映象備份檔案 docker load i 檔案路徑 fastdfs docker.tar載入好映象後,就可以開啟執行fastdfs的tracker和sto...

使用 Docker安裝 FastDFS

tracker 進行排程,storage 進行儲存 獲取映象docker image pull delron fastdfs docker load i 檔案路徑 fastdfs docker.tar拉取速度太慢的話可以參考我之前的文章 ubuntu 中 docker 安裝和映象加速 配置國內的映象...