0%

环境搭建- -Fastdfs

分布式文件存储系统,通常用于存储小文件、图片等。

简介

本文档介绍如何在 Centos7.x 非 root 用户下离线安装 Fastdfs,及使用 nginx 代理 Fastdfs http 端口。 由于是非 root 用户安装和使用需要修改自带的脚本,更改默认的路径。

服务 版本
Fastdfs 6.07
Nginx 1.20.1
fastdfs-nginx-module 1.22

部署安装

下载包体

1
2
3
4
5
6
7
8
# 下载 libfastcommon 依赖包
git clone https://github.com/happyfish100/libfastcommon.git
# 下载 Fastdfs
git clone https://github.com/happyfish100/Fastdfs.git
# 下载 nginx
wget http://nginx.org/download/nginx-1.20.1.tar.gz
# 下载 Fastdfs-nginx
git clone https://github.com/happyfish100/fastdfs-nginx-module.git

源码编译安装

  • 安装 fastdfs 依赖环境

    1
    2
    3
    4
    5
    6
    cd libfastcommon
    export DESTDIR="/home/xx" # 此路径为应用用户路径,比如 /home/fastdfs,此路径根据具体情况设置

    sh make.sh # 预编译
    sh make.sh install # 安装
    # sh make.sh clean 清理编译内容
  • 安装 fastdfs 及相关依赖

    • 设置全局变量
      1
      2
      3
      4
      5
      6
      7
      8
      9
      cat >> ${HOME}/.bash_profile <<EOF
      export PATH=${HOME}/fastdfs/usr/bin:\${PATH}
      export C_INCLUDE_PATH=${HOME}/fastdfs/usr/include
      export LIBRARY_PATH=${HOME}/fastdfs/usr/lib
      export LD_LIBRARY_PATH=${HOME}/fastdfs/usr/lib64
      EOF

      # 加载全局变量
      source ${HOME}/.bash_profile
    • 编译安装
      1
      2
      3
      4
      5
      6
      7
      8
      9
      cd fastdfs
      # 修改 make.sh
      vim make.sh
      - TARGET_CONF_PATH=$DESTDIR/etc/fdfs $DESTDIR/conf
      + TARGET_CONF_PATH=$DESTDIR/conf

      sh make.sh # 预编译
      sh make.sh install # 安装
      # sh make.sh clean 清理编译内容
  • 安装 fastdfs-nginx 模块

    • 将 fastdfs-nginx-module 复制到 nginx-1.20.1/src 目录下
      1
      cp -r fastdfs-nginx-module nginx-1.20.1/src
    • 编译安装
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      cd nginx-1.20.1

      # 修改 默认路径 为应用路径
      vim src/fastdfs-nginx-module/src/config
      - CFLAGS="$CFLAGS -D_FILE_OFFSET_BITS=64 -DFDFS_OUTPUT_CHUNK_SIZE='256*1024' -DFDFS_MOD_CONF_FILENAME='\"/etc/fdfs/mod_fastdfs.conf\"'"
      + CFLAGS="$CFLAGS -D_FILE_OFFSET_BITS=64 -DFDFS_OUTPUT_CHUNK_SIZE='256*1024' -DFDFS_MOD_CONF_FILENAME='\"/home/fastdfs/conf/mod_fastdfs.conf\"'"

      ./configure --prefix=../nginx --add-module=src/fastdfs-nginx-module/src
      make -j 2 # 可以根据 cpu 核数调整数值大小,增加编译效率
      make -j 2 install # 安装

修改配置

  • 修改 fastdfs
  • 修改 nginx

启动服务

测试