FastDFS 架构包括 Tracker server 和 Storage server。
客户端请求 Tracker server 进行文件上传,下载,通过 Tracker server 调度
最终由 Storage server 完成文件上传和下载。
Tracker server 作用是负载均衡和调度,通过 Tracker server 在文件上传时可以根据一些 策略找到 Storage server 提供文件上传服务。可以将 tracker 称为追踪服务器或调度服务器。
Storage server 作用是文件存储,客户端上传的文件最终存储在 Storage 服务器上,
Storage server没有实现自己的文件系统而是利用操作系统的文件系统来管理文件。可以将 storage 称为存储服务器。
一、安装docker
点击查看docker安装
二、安装FastDFS
1.拉取镜像
docker image pull delron/fastdfs
2.运行tracker
–network=host 表示是host网络模式直接容器暴露公共网络中
tracker的默认监控端口为22122
tracker的默认http端口为8080
-v /www/wwwroot/fastdfs/tracker:/var/fdfs 表示将容器的/var/fdfs目录映射到宿主机/www/wwwroot/fastdfs/tracker目录上
docker run -dti --network=host --name tracker -v /www/wwwroot/fastdfs/tracker:/var/fdfs delron/fastdfs tracker
注意:如果不想采用host网络模式可使用如下方式
docker run -dti --name tracker -p 8089:8080 -p 8903:22122 -p 8904:23000 -v /www/wwwroot/fastdfs/tracker:/var/fdfs delron/fastdfs tracker
-p 8089:8080 表示将容器的8080 端口映射到宿主机8089端口上
-p 8903:22122 表示将容器的22122端口映射到宿主机8903端口上
-p 8904:23000 表示将容器的23000端口映射到宿主机8904端口上
2.运行storage
–network=host 表示是host网络模式直接容器暴露公共网络中
176.44.55.213:22122 表示上面的tracker地址跟端口,
这里的176.44.55.213写宿主机的ip
storage的默认http端口为8888
-v /www/wwwroot/fastdfs/storage:/var/fdfs 表示将容器的/var/fdfs目录映射到宿主机/www/wwwroot/fastdfs/storage目录上
docker run -dti --network=host --name storage -e TRACKER_SERVER=176.44.55.213:22122 -v /www/wwwroot/fastdfs/storage:/var/fdfs delron/fastdfs storage
注意:如果不想采用host网络模式可使用如下方式
176.44.55.213:8903 表示上面的tracker地址跟22122端口,上方演示将 22122端口映射到宿主机8903端口上了,所有这里写8903端口,
这里的176.44.55.213要写tracker的容器ip或者映射到宿主机上的外网ip
-p 8905:8888 表示将容器的8888端口映射到宿主机8905端口上
docker run -dti --name storage -e TRACKER_SERVER=176.44.55.213:8903 -p 8905:8888 -v /www/wwwroot/fastdfs/storage:/var/fdfs delron/fastdfs storage