2020-03-12 Springboot+FastDFS
一、Linux下安装FastDFS
前期准备
一个centos7
一个FastDFS_v5.05.tar.gz
一个libfastcommon(libfastcommonV1.0.7.tar.gz)
版本一定 要对应得上,要不然会报错。
开始安装
安装tracker
(1)安装gcc
yum install gcc-c++
(2)安装libevent
yum -y install libevent
(3)安装libfastcommon
将libfastcommonV1.0.7.tar.gz拷贝至/usr/local/下
cd /usr/local
tar -zxvf libfastcommonV1.0.7.tar.gz
cd libfastcommon-1.0.7
./make.sh
./make.sh install
注意如果./make.sh失败,报perl未找到,执行下方的方法。
yum -y install zlib zlib-devel pcre pcre-devel gcc gcc-c++ openssl
openssl-devel libevent libevent-devel perl unzip net-tools wget
(4)将/usr/lib64下的库文件libfastcommon.so拷贝至/usr/lib下
(5)将FastDFS_v5.05.tar.gz拷贝至/usr/local/下
tar -zxvf FastDFS_v5.05.tar.gz
cd FastDFS
./make.sh
./make.sh install
安装成功将安装目录下的conf下的文件拷贝到/etc/fdfs/下。
client,http,mime,storage,storage_ids,tracker
(6)安装成功后进入/etc/fdfs目录:
拷贝一份新的tracker配置文件:
cp tracker.conf.sample tracker.conf
修改tracker.conf
vi tracker.conf
base_path=/home/yuqing/FastDFS
改为:
base_path=/home/FastDFS
(7)启动
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
(8)设置开机自动启动
vim /etc/rc.d/rc.local
将运行命令行添加进文件:/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
安装 Storage
(0)如果在一台服务器上,之前的tracker,libevent,libfastcommon
解压 fastdfs,这些步骤可以不用进行,如果两台的话,需要进行。
(1)安装成功后进入/etc/fdfs目录
拷贝一份新的storage配置文件:
cp storage.conf.sample storage.conf
(2)修改storage.conf
vi storage.conf
group_name=group1
base_path=/home/yuqing/FastDFS改为:base_path=/home/FastDFS
store_path0=/home/yuqing/FastDFS改为:store_path0=/home/FastDFS/fdfs_storage
/#如果有多个挂载磁盘则定义多个store_path,如下
/#store_path1=.....
/#store_path2=......tracker_server=192.168.101.3:22122 #配置tracker服务器:IP
/#如果有多个则配置多个tracker
tracker_server=192.168.20.1:22122
上面的地址写你自己的详细地址。
(3)启动
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
(4)设置开机启动
vim /etc/rc.d/rc.local
将运行命令行添加进文件
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
上传测试
修改/etc/fdfs/client.conf
base_path=/home/fastdfs
tracker_server=192.168.20.1:22122
使用格式:
/usr/bin/fdfs_test 客户端配置文件地址 upload 上传文件
比如将/home下的图片上传到FastDFS中:
/usr/bin/fdfs_test /etc/fdfs/client.conf upload /home/1.png
生成得图片在这个目录下:
/home/fastdfs/fdfs_storage/data/00/00
参考:
https://www.cnblogs.com/jichi/p/11315611.html
二、如何让FastDFS具备http访问的能力。
1、linux安装nginx。
需要依赖一些环境:
a、gcc
yum install gcc-c++
b、pcre
yum install -y pcre pcre-devel
c、zlib
yum install -y zlib zlib-devel
d、openssl
yum install -y openssl openssl-devel
2、Nginx-FastDFS插件。
a、把 fastdfs-nginx-module_v1.16.tar.gz包放在 /usr/local 路径下
b、解压 fastdfs-nginx-module: tar -zxf fastdfs-nginx-module_v1.16.tar.gz
c、配置 fastdfs-nginx-module/src/config 文件,将配置中local/ 这个内容删除:
文件编程下面这样:
d、将src下的文件mod_fastdfs.conf 复制到etc/fdfs路径下。
修改配置文件:
设置本机的linux的ip跟端口。
设置包含组名称:
存储间的位置
3、下载安装nginx
a、http://nginx.org/en/download.html 下载地址,下载1.8.1版本
b、解压:tar -zxf nginx-1.8.1.tar.gz
c、进入 cd nginx-1.8.1 ,告诉nginx ,fastdfs-nginx-module插件的位置在哪:
./configure --add-module=/usr/local/fastdfs-nginx-module/src
d、编译:make
e、安装:make install
f、进入到安装后的nginx文件: cd /usr/local/nginx
配置插件信息:vim conf/nginx.conf
加上下面这个配置信息:
g:在sbin文件下,启动nginx: ./nginx
查看运行nginx: ps -aux | grep nginx
重启nginx: ./nginx -s reload
centOS7关闭防火墙命令: systemctl stop firewalld.service
4、启动nginx报错处理:
a、[2020-05-11 21:18:36] ERROR - file: shared_func.c, line: 960, open file /etc/fdfs/mime.types fail, errno: 2, error info: No such file or directory
复制相应文件到/etc/fdfs : cp /usr/local/fastdfs-5.05/conf/mime.types /etc/fdfs/
重启: ./nginx -s reload
b、访问:成功
访问fds的资源:成功
三、SpringBoot 运用fastDFS 代码
https://github.com/mathLjtao/SpringbootWithTools/tree/master/springboot-fastdfs