阿里云服务器使用Docker安装fastdfs+nginx

最近给阿里云服务器配置fastdfs,通过外网访问,查询了许多资料,也走了一些坑,总结一下最方便的方法:

FastDfs

安装delron-fastdfs

docker pull delron/fastdfs

1.启动tracker

HOME为自己设置的服务器目录,在下一级再建一个tracker文件夹,默认http端口8080不用修改

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

2.启动storage

HOME为自己设置的服务器目录,在下一级再建一个storage文件夹

docker run -d --network=host --name storage -e TRACKER_SERVER=自己的服务器ip:22122 -v HOME/storage:/var/fdfs -e GROUP_NAME=group1 delron/fastdfs storage

启动完成后,默认的http_port为8888,在这个版本的fastdfs里,这个端口不用和nginx监听的对应起来,不用管这个默认端口

docker exec -it storage  /bin/bash
vi /etc/fdfs/storage.conf

文件最后把http_port改成80.

3.Nginx

最后访问效果类似:
因为nginx默认监听的端口为8888
xxxx:8888/group1/M00/00/00/rBoFwGDa6PaAIFhaAAAADVMSH0Y67.html
不太好看,一般访问不带端口号,在这里把8888改成80.
delron/fastdfs版本自带nginx,直接进入容器,把listen改成80:

docker exec -it storage  /bin/bash
vi /usr/local/nginx/nginx.conf
 server {
        listen       80;
        server_name  自己服务器ip;
        location ~/group[0-9]/ {
            ngx_fastdfs_module;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root html;
        }
    }

3.防火墙打开端口

开启防火墙

systemctl start firewalld

开启端口:

firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=23000/tcp --permanent
firewall-cmd --zone=public --add-port=22122/tcp --permanent

在阿里云的服务器上也要添加规则:
在这里插入图片描述

4.测试

docker exec -it storage bash
echo hello>a.txt
/usr/bin/fdfs_upload_file /etc/fdfs/client.conf a.txt
group1/M00/00/00/rBoFwGDWrcCALOJJAAAABncc3SA472.txt

在这里插入图片描述

大功告成

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值