使用docker搭建FastDFS文件系统

本文介绍了如何利用Docker搭建FastDFS文件系统,包括下载镜像、创建tracker和storage容器,配置storage.conf和Nginx,以及设置跨域访问。在阿里云服务器上部署时需要注意使用内网IP和安全组设置。最后,通过上传并访问图片验证了文件系统的正常运行。
摘要由CSDN通过智能技术生成

 

1.首先下载FastDFS文件系统的docker镜像

docker search fastdfs

2.使用docker镜像构建tracker容器(跟踪服务器,起到调度的作用):

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

3.使用docker镜像构建storage容器(存储服务器,提供容量和备份服务):

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

上面需要填写你的tracker服务的ip地址,端口默认是22122。 (如果是阿里云服务器的话,为内网IP)

4.此时两个服务都以启动,进行服务的配置。

进入storage容器,到storage的配置文件中配置http访问的端口,配置文件在/etc/fdfs目录下的storage.conf。

 默认端口是8888,也可以不进行更改。

 

5.配置nginx,在/usr/local/nginx目录下,修改nginx.conf文件

默认配置如下:

也可以更改为如下所示:

location /group1/M00 {
        alias  /var/fdfs;
    }

6.此时文件系统以搭建完毕,使用web模块进行文件的上传,将文件上传至FastDFS文件系统,此处不详细解释,可以问度娘,Python中有相应的扩展包,可直接使用。此处我往文件系统的目录中放置一张照片进去,然后通过url地址进行访问。

此处展示了FastDFS文件系统的存储结构,在服务器中storage目录下的data中创建了这么多的文件夹进行文件的存储。

将一张照片(cumt.png)放置在/var/fdfs/storage目录下,进入storage容器,进入/var/fdfs目录,运行下面命令:

/usr/bin/fdfs_upload_file /etc/fdfs/client.conf cumt.png

此时将该图片已上传至文件系统,并在执行该语句后返回图片存储的uri:

通过url访问http://ip:8888/group1/M00/00/00/wKgBcFvTv86AOwckAAFbd_uukFc519.png,即可查看到图片(图片为透明背景,所以如此显示)。

阿里云服务器部署时 注意点

  1. storage 容器(storage.conf) 中 tracker_server为服务器 私网(内网)IP 编程语言使用时 设置公网IP (即 client.conf)
    2.安全组 开放 22122 23000 8888 端口 (设置过 最好重启服务器)
    3.nginx 跨域设置
#nginx.conf配置文件中添加
location /group1/M00 {
            #root   /fastdfs/store_path/data;
            ngx_fastdfs_module;
}

#在server里面配置跨域配置跨域  在server里面
    add_header 'Access-Control-Allow-Origin' '*';
    add_header 'Access-Control-Allow-Credentials' 'true';
    add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
    add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type';

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值