docker

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > 云和虚拟化 > docker > docker FastDFS分布式文件系统

docker部署FastDFS分布式文件系统

作者:❀͜͡傀儡师

FastDFS是一个轻量级、高性能的分布式文件系统,本文主要介绍了docker部署FastDFS分布式文件系统,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

1、fastdfs简介

FastDFS 是一个开源的、轻量级的分布式文件系统,主要用于管理文件,如图片、视频、文档等,解决海量文件存储和高并发访问的问题。

2、核心特性

3、安装docker

1、安装依赖包

yum install -y yum-utils device-mapper-persistent-data lvm2

2、配置docker yum源

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3、安装docker

yum install -y docker-ce

4、修改docker配置文件

mkdir /dta/docker -p
sudo tee /etc/docker/daemon.json <<-'EOF'
{
    "registry-mirrors": [
      "https://docker.credclouds.com",
      "https://k8s.credclouds.com",
      "https://quay.credclouds.com",
      "https://gcr.credclouds.com",
      "https://k8s-gcr.credclouds.com",
      "https://ghcr.credclouds.com",
      "https://do.nark.eu.org",
      "https://docker.m.daocloud.io",
      "https://docker.nju.edu.cn",
      "https://docker.mirrors.sjtug.sjtu.edu.cn",
      "https://docker.1panel.live",
      "https://docker.rainbond.cc"
    ],
   "data-root": "/data/docker"
}
EOF

5、启动docker

systemctl daemon-reload
systemctl enable docker --now
systemctl restart docker

6、安装docker-compose

# 下载docker-compose文件
curl -L "https://github.com/docker/compose/releases/download/v2.29.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

# 执行权限
chmod +x /usr/local/bin/docker-compose
ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

# 查看是否安装成功
docker-compose --version

4、拉取fastDFS镜像

docker pull delron/fastdfs:latest

5、创建数据目录

mkdir -p /data/fastdfs/{tracker,storage,conf}
mkdir -p /data/fastdfs/storage/{data,logs}
chmod 777 /data/fastdfs

6、安装tracker服务

docker run -d \
--name tracker \
--net host \
--restart always \
-v /etc/localtime:/etc/localtime \
-v /data/fastdfs/tracker:/fastdfs/tracker \
delron/fastdfs:latest tracker

7、安装Storage服务

docker run -d \
--name storage \
--net host \
--restart always \
-v /etc/localtime:/etc/localtime \
-v /data/fastdfs/storage/data:/fastdfs/store_path \
-v /data/fastdfs/storage/logs:/fastdfs/storage \
-e TRACKER_SERVER="172.16.12.115:22122" \
delron/fastdfs:latest storage

8、安装nginx服务

vi /data/fastdfs/conf/nginx.conf
worker_processes  4;

events {
    worker_connections  1024;
}
 
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
 
server {
    listen       8888;
    server_name  localhost;
    location /group1/M00 {
        root /fastdfs/store_path/data;
        ngx_fastdfs_module;
    }
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
       root   html;
    }
  }
}

启动nginx容器:

docker run -d \
--name nginx \
-v /etc/localtime:/etc/localtime \
-v /data/fastdfs/storage/data:/fastdfs/store_path \
-v /data/fastdfs/conf/nginx.conf:/etc/nginx/conf/nginx.conf \
--net=host \
-e TRACKER_SERVER="172.16.12.115:22122" \
delron/fastdfs:latest nginx

9、查看容器日志

docker logs -f tracker
docker logs -f storage
docker logs -f nginx

10、测试图片上传

docker exec -it storage bash
cd /var/fdfs/
/usr/bin/fdfs_upload_file /etc/fdfs/client.conf 1.png

11、验证

http://172.16.12.115:8888/group1/M00/00/00/wKg0D2kLeiyASd5qAATLbPP5NnY728.png

总结

FastDFS 可以理解为互联网领域,特别是中小型公司的“国民级分布式图片/文件服务器”。当你的应用需要存储和管理大量用户上传的文件,并且对性能和扩展性有要求时,FastDFS 是一个非常可靠和经典的选择。

到此这篇关于docker部署FastDFS分布式文件系统的文章就介绍到这了,更多相关docker FastDFS分布式文件系统内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文