返回
Featured image of post Docker部署FastDFS

Docker部署FastDFS

Docker 部署 FastDFS

一、docker 拉取 FastDFS 镜像

docker pull season/fastdfs:1.2

docker cmd
docker cmd

二、运行Tracker

docker run -ti -d --name trakcer -v /opt/fastdfs/tracker_data:/fastdfs/tracker/data --net=host season/fastdfs:1.2 tracker

三、运行 Storage

注意替换{ipaddress}

docker run -ti -d --name storage -v /opt/fastdfs/storage_data:/fastdfs/storage/data -v /opt/fastdfs/store_path:/fastdfs/store_path --net=host -e TRACKER_SERVER:{ipaddress}:22122 season/fastdfs:1.2 storage

四、修改 FastDFS 配置文件

启动完Tracker 和 Storage 后 接下来修改 默认的配置文件

#首先将storage 容器里面的 /fdfs_conf/ 目录下所以配置文件使用docker cp 命令复制出来
docker cp storage:/fdfs_conf/. /usr/local/fastdfs/conf

#编辑 tracker.conf 文件,将bind_addr字段的值替换成本机的IP
vim tracker.conf
bind_addr=${ipaddress}
#编辑 storage.conf 文件,将tracker_server字段的值替换成本机的IP
vim storage.conf
tracker_server=${ipaddress}:22122
#编辑 client.conf 文件,将tracker_server字段的值替换成本机的IP
vim client.conf
tracker_server=${ipaddress}:22122
 
#将修改完的配置文件cp回镜像中
docker cp /usr/local/fastdfs/conf/. storage:/fdfs_conf
 
#重启storage服务
docker restart storage

五、配置 nginx & ngx_fastdfs_module

  1. 创建一个 nginx.conf 文件 复制下面配置
server {
        listen       80;
        server_name  cq.lizihao.ltd;
     
      location /lzh/data {
      	alias /usr/share/nginx/html/Data;  
      }
      
      location /ljf/CheshireMusic {
	  try_files $uri $uri/ @router;
         index  index.html index.htm;
	     alias /usr/share/nginx/html/jinfa/CheshireMusic;
      }

      location = /50x.html   {
           root   html;
       }

      location /group1/M00 {
          #root  /fastdfs/store_path/data;
          ngx_fastdfs_module;
       }

   }
  1. 编辑 之前 cp 出的 mod_fastdfs.conf 文件
#添加这行配置
url_have_group_name=true
#在40行处 修改 tracker_server的IP地址

docker conf
docker conf

六、启动 Nginx

当中参数 -v 由于我本身nginx 部署有应用 所以要加入其它的数据卷

docker run -id --name fastdfs_nginx --restart=always -v /opt/fastdfs/store_path:/fastdfs/store_path -v /root/nginx/conf/nginx.conf:/etc/nginx/conf/nginx.conf -v /root/fastdfs/conf/mod_fastdfs.conf:/etc/fdfs/mod_fastdfs.conf -v /root/nginx/logs:/var/log/nginx -v /root/nginx/html:/usr/share/nginx/html -p 8888:80 -e GROUP_NAME=group1 -e TRACKER_SERVER=81.71.103.97:22122 -e STORAGE_SERVER_PORT=23000 season/fastdfs:1.2 nginx

七、配置或者关闭防火墙

配置防火墙

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

或者 关闭防火墙

systemctl stop firewalld.service 
Built with Hugo
Theme Stack designed by Jimmy