Docker

Docker - 部署 FastDFS(分布式文件系统)

简介
FastDFS 是一个开源的高性能分布式文件系统(DFS)。 它的主要功能包括:文件存储,文件同步和文件访问,以及高容量和负载平衡。主要解决了海量数据存储问题,特别适合以中小文件(建议范围:4KB < file_size <500MB)为载体的在线服务。

FastDFS开源地址: https://hub.docker.com/r/season/fastdfs/

FastDFS 系统有三个角色:跟踪服务器(Tracker Server)、存储服务器(Storage Server)和客户端(Client)。

Tracker Server:跟踪服务器,主要做调度工作,起到均衡的作用;负责管理所有的 storage server和 group,每个 storage 在启动后会连接 Tracker,告知自己所属 group 等信息,并保持周期性心跳。
判断有哪些存储服务器(注册中心)
判断哪个存储服务器的空间较大
判断资源所在的存储服务器(路由)
Storage Server:存储服务器,主要提供容量和备份服务;以 group 为单位,每个 group 内可以有多台 storage server,数据互为备份。

Client:客户端,上传下载数据的服务器,也就是我们自己的项目所部署在的服务器。 

1. 下载 fastdfs 镜像

docker pull season/fastdfs

2. 查看fastdfs的端口是否被占用

netstat -aon | grep 22122

3. 关闭防火墙

 systemctl stop firewalld

 关闭centos 7新防火墙 如下图

find / -name selinux
vim  /etc/sysconfig/selinux

 

4. 执行reboot重启系统

5. 创建tracker服务器的容器

docker run -ti -d --name trakcer -v ~/fastdfs/tracker_data:/fastdfs/tracker/data --net=host season/fastdfs tracker

进入容器,查看tracker地址

docker exec -it trakcer bash

cat /fdfs_conf/storage.conf 

6. 创建storage存储服务器

  • 指定tracker服务器的地址(通过环境变量)
  • storage文件位置 /store_path 
docker run -tid --name storage -v ~/fastdfs/storage_data:/fastdfs/storage/data -v ~/fastdfs/store_path:/fastdfs/store_path --net=host -e TRACKER_SERVER:192.168.209.121:22122 season/fastdfs storage

  进入storage容器下,将fdfs_conf目录下的storage.conf文件拷贝到root目录下

docker cp storage:/fdfs_conf/storage.conf ~/

 编辑storage.conf文件,将地址指上

vim storage.conf

 

 将编辑好的文件再拷贝回去

docker cp ~/storage.conf  storage:/fdfs_conf/

重启容器 

7. 启动fastdfs客户端

将storage服务器的配置文件拷贝到客户端 fdfs_sh:/fdfs_conf/ 

docker run -ti -d --name fdfs_sh --net=host season/fastdfs sh
docker cp ~/storage.conf  fdfs_sh:/fdfs_conf/

 重启容器

8.  

  • 这时storage存储服务器已注册到trakcer服务器上,开启8888端口,接下来我们就可以实现上传下载文件

引用:https://blog.csdn.net/weixin_43683052/article/details/84792338

原文地址:https://www.cnblogs.com/1285026182YUAN/p/13152939.html