美文网首页
docker 安装 fastDFS

docker 安装 fastDFS

作者: numqin | 来源:发表于2020-06-15 14:30 被阅读0次
    安装示意图

    tracker 安装

    安装 docker

    yum  install docker -y
    

    启动 docker

    service start docker
    

    获取image

    docker pull delron/fastdfs
    

    创建 tracker 容器

    docker run -d --network=host --name tracker -v /root:/var/root delron/fastdfs tracker
    

    storage 安装

    安装 docker

    yum  install docker -y
    

    启动 docker

    service start docker
    

    获取image

    docker pull delron/fastdfs
    

    创建 storage 容器

    TRACKER_SERVER 为 tracker 的 IP

    docker run -d --network=host --name storage -e TRACKER_SERVER=192.168.31.101:22122 -v /root:/var/root -e GROUP_NAME=group1 delron/fastdfs storage
    

    进入storage容器

    docker exec -it storage /bin/bash
    

    测试图片上传

    wget https://v3u.cn/v3u/Public/images/logo.png
    
    /usr/bin/fdfs_upload_file /etc/fdfs/client.conf logo.png
    

    无法上传成功请查看相关端口是否开启

    完成以上操作就可以对外提供服务了,如果后续需要进行扩容可以看下面的扩容操作

    扩容操作

    1. 再次安装 storage, GROUP_NAME=group2 必须与之前的不一样

      docker run -d --network=host --name storage -e TRACKER_SERVER=192.168.31.101:22122 -v /root:/var/root -e GROUP_NAME=group2 delron/fastdfs storage
      
    2. 进入 tracker 服务器 修改 /etc/fdfs/tracker.conf 中的 store_lookup=0 ,这样可以利于测试。tracker 服务器会两个 storage 轮流上传文件

      # the method of selecting group to upload files
      # 0: round robin
      # 1: specify group
      # 2: load balance, select the max free space group to upload file
      store_lookup=0
      
    3. 修改对应的 storage 的 /etc/fdfs/mod_fastdfs.conf 中的 group name 参数,必须与安装在本台服务器的 docker 启动命令中的 GROUP_NAME=group2 一致

    4. 进入 tracker 服务器 添加 nginx 配置

      upstream fdfs_group1 {
          server 192.168.31.102:8888 weight=1 max_fails=2 fail_timeout=30s;
      }
      
      upstream fdfs_group2 {
          server 192.168.31.103:8888 weight=1 max_fails=2 fail_timeout=30s;
      }
      
      location /group1/M00 {
          proxy_set_header Host $host;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_pass http://fdfs_group1;
      }
      
      location /group2/M00 {
          proxy_set_header Host $host;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_pass http://fdfs_group2;
      }
      

    其他

    storage 容器重启后无法启动问题

    创建 storaged.log 即可

    在宿主机中创建 storaged.log 文件,然后拷贝到 storage 容器中去

    docker cp storaged.log storage:/var/fdfs/logs/

    参考

    fastdfs集群版搭建(一)- storage集群搭建与统一入口访问
    分布式文件存储 FastDFS

    相关文章

      网友评论

          本文标题:docker 安装 fastDFS

          本文链接:https://www.haomeiwen.com/subject/ecncxktx.html