第一部分 原始搭建FastDFS文件服务器
- 1.下载相应的安装包
如有需要可以点击下载安装包。- fastdfs-5.05.tar.gz
- fastdfs-nginx-module-v1.16.tar.gz
- libfastcommon1.0.7.tar.gz
- nginx-1.12.0.tar.gz
我的存放目录 在/home下
fastdfs文件夹,nginx包
-
2基础安装
yum install libevent
3.安装libfastcommon
- 解压进入到对应目录下 ./make.sh -->./make.sh install(这里如果报错了先安装yum install gcc-c++)
- /usr/lib64 中libfastcommon.so复制到/usr/lib下。
- 4.安装fastdfs-5.05.tar.gz
(1) 解压 tar -zxvf [包名]。
(2)进入到安装目录找到./make.sh编译,再 ./make.sh install
(3) cd /usr/bin --> ll fdfs*
(4) cd fastdfs-5.05... 找到conf目录,将它们拷贝 cp * /etc/fdfs/
(5)vim /etc/fdfs/tracker.conf-->修改base_path=/home/fastdfs/tracker
(6)建立相应的路径 mkdir /home/fastdfs/tracker -p 创建刚才的目录(-p是递归的意思),同理先把其他的两个client、storage对应要修改的basepath的文件目录也建立好。我把它命名为/home/fastdfs/wqclient与/home/fastdfs/wqstorage
(7) cd /usr/bin 启动tracker ,fdfs_trackerd /etc/fdfs/tracker.conf (重启加restart)
(8)修改vim /etc/fdfs/storage.conf 找到base_path(参考第5步改成/home/fastdfs/wqstorage),group_name(我的命名为guanghuafdfs),storage_path0=存放图片的路径(同base_path设置的路径,即/home/fastdfs/wqstorage),track_server修改为当前虚拟机的地址(阿里云设为公网地址)。
(9)启动fdfs_storaged /etc/fdfs/storage.conf 可以使用ps aux | grep storage查看是否启动成功了
(10)配置client.conf 找到base_path存储日志的地址,修改为/home/fastdfs/wqclient,tracker_server修改为服务器所在地址(如果是阿里云就设置为内网ip),保存。测试,进入/usr/bin目录下执行fdfs_test /etc/fdfs/client.conf upload ~/aa.png(aa.png提前上传好) 即可上传成功。可以去wqstorage下data中查看上传的图片。位置大概在/M00/00/00/XXXXX.png!
- 5.安装fastdfs-nginx-module-v1.16.tar.gz(nginx与fastdfs桥梁)
1.解压安装包
2.进入文件夹找到src,找到conf,vim 修改 将三个local删除。
- 6.安装nginx
6.1.yum install gcc-c++、pcre pcre-devel、zlib zlib-devel、openssl openssl-devel。
6.2.解压并进入到相应目录,运行一段变态的命令 注: 最后一行需要修改下,还有每行的\后面不要有空格。粘贴并回车(这里我只执行了第一、二、三和最后一句)
./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi \
--add-module=/home/fastdfs/fastdfs-nginx-module/src
6.3.接着make编译
6.4.make install进行安装
6.5.桥梁配置:找到fastdfs-nginx-module目录进入src,拷贝mod_fastdfs.conf到/etc/fdfs/下。
6.6.然后对它修改vim /etc/fdfs/mod_fastdfs.conf修改base_path改为/home/fastdfs/tmp然后保存。并在/home/fastdfs下创建这个tmp文件夹。
6.7.再进入到/etc/fdfs/接着修改mod_fastdfs.conf,修改tracker_server=.....对应虚拟机地址,group_name=guanghuafdfs,接着修改url_having_group_name=true,最后修改storage_path0修改成/home/fastdfs/wqstorage(很重要)!
6.8.cd到/usr/local下找到nginx进入找到conf目录下,修改nginx.conf增加或修改相应的服务器配置。
server{
listen 88;
server_name 192.168.1.103;
location /guanghuafdfs/M00{
ngx_fastdfs_module;
}
}
6.9.cd /usr/local/nginx/sbin启动nginx, ./nginx -t 发现报错信息没有相应的某个目录,那么创建该目录即可。mkdir /var/temp/nginx -p ,再测试发现没问题了,此时./nginx即可启动。
6.10.打开浏览器进行访问当然需要关闭防火墙。l输入192.168.1.103出现nginx欢迎页面即代表成功了。
6.11.访问图片http://192.168.1.124:88/guanghuafdfs/M00/00/00/wKgBfFvxbqSAWAuuAAAZxghBAkk87
6.12.重启 /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart 同理再重启storage
6.13.cd /usr/local/nginx/sbin ./nginx -s reload重启nginx即可。
关于重启
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
cd /usr/local/nginx/sbin ./nginx -s reload,即可重启nginx踩坑总结
因为我用的阿里云,所以在公网内网设置的时候踩了坑。这里补充下:
1.mod_fastdfs.conf填内网。
2.storage.conf公网!!
3.client.conf内网
4.nginx监听公网
阿里云那边需要在安全组配置规则(很重要!)
第二部分 基于 Docker 安装 FastDFS
💙注: 本文长期更新。此笔记纯个人学习记录整理,如有错误之处,欢迎指正!