• 在Docker里安装FastDFS分布式文件系统详细步骤


    安装需要的软件包

    yum install -y yum-utils

    设置yum源

    1. yum-config-manager \
    2. --add-repo \
    3. https://download.docker.com/linux/centos/docker-ce.repo

    安装docker 

    yum install -y docker-ce

    查看docker版本验证安装是否成功 

    docker -v

    启动docker

    systemctl start docker

    查看docker上的fastDFS镜像信息

    docker search fastdfs
    1. [root@localhost ~]# docker search fastdfs
    2. NAME DESCRIPTION STARS OFFICIAL AUTOMATED
    3. season/fastdfs FastDFS 87
    4. ygqygq2/fastdfs-nginx 整合了nginx的fastdfs 29 [OK]
    5. luhuiguo/fastdfs FastDFS is an open source high performance d… 25 [OK]
    6. morunchang/fastdfs A FastDFS image 20
    7. delron/fastdfs 15
    8. qbanxiaoli/fastdfs FastDFS+FastDHT(单机+集群版) 14 [OK]
    9. moocu/fastdfs fastdfs5.11 9
    10. dodotry/fastdfs 更新到最新版本,基于Centos8/nginx1.19.8/Fast… 6
    11. ecarpo/fastdfs-storage 4
    12. imlzw/fastdfs-tracker fastdfs的tracker服务 3 [OK]
    13. ecarpo/fastdfs 3
    14. imlzw/fastdfs-storage-dht fastdfs的storage服务,并且集成了fastdht的服务… 2 [OK]
    15. manuku/fastdfs-fastdht fastdfs fastdht 2 [OK]
    16. perfree/fastdfsweb go-fastdfs文件系统的web管理系统 2
    17. manuku/fastdfs-tracker fastdfs tracker 1 [OK]
    18. lionheart/fastdfs_tracker fastdfs file system‘s tracker node 1
    19. appcrash/fastdfs_nginx fastdfs with nginx 1
    20. basemall/fastdfs-nginx fastdfs with nginx 1 [OK]
    21. leaon/fastdfs fastdfs 1
    22. tsl0922/fastdfs FastDFS is an open source high performance d… 0 [OK]
    23. manuku/fastdfs-storage-dht fastdfs storage dht 0 [OK]
    24. manuku/fastdfs-storage-proxy fastdfs storage proxy 0 [OK]
    25. germicide/fastdfs The image provides pptx\docx\xlsx to pdf,mp… 0
    26. mypjb/fastdfs this is a fastdfs docker project 0 [OK]
    27. chenfengwei/fastdfs

     拉取镜像

    docker pull delron/fastdfs
    1. [root@localhost ~]# docker pull delron/fastdfs
    2. Using default tag: latest
    3. latest: Pulling from delron/fastdfs
    4. 469cfcc7a4b3: Downloading [====================================> ] 53.55MB/73.17MB
    5. 4b4f08bd0171: Downloading [===============================> ] 55.65MB/88.7MB
    6. 95eef9978b96: Download complete
    7. aff83d00c747: Download complete
    8. 1e95dffa1075: Download complete
    9. f114184ac28c: Download complete
    10. 649b2ad6afe2: Download complete
    11. 8ab2127a38c5: Download complete
    12. 4d12f9bd27c7: Download complete
    13. bfc05d82f0a6: Download complete
    14. 76f2a6d84a19: Download complete
    15. 89bd9c4e6fea: Download complete
    16. 6c06548e40ac: Download complete
    17. 11186700b494: Download complete

    创建fastDFS挂载路径

    1. [root@localhost ~]# mkdir DockerDFS
    2. [root@localhost ~]# cd DockerDFS/
    3. [root@localhost DockerDFS]# ll
    4. total 0
    5. [root@localhost DockerDFS]# mkdir tracker
    6. [root@localhost DockerDFS]# mkdir storage
    7. [root@localhost DockerDFS]# ls
    8. storage tracker
    9. [root@localhost DockerDFS]#

    构建Tracker容器

    使用docker镜像构建tracker容器,用于启动跟踪服务器,起到调度的作用。
    其中-v参数将本地的目录与容器中的/var/fdfs目录进行挂载
    使用的网络模式是–net=host
    –name容器名
    -d后台启动

    docker run -d --network=host --name tracker -v /data/fastDFS/tracker/:/var/fdfs delron/fastdfs tracker
    1. [root@localhost DockerDFS]# docker run -d --network=host --name tracker -v /data/fastDFS/tracker/:/var/fdfs delron/fastdfs tracker
    2. c4c768ff0de669d4a5f82d402600e4aab280d79163991801f0e21681da9d016e
    3. [root@localhost DockerDFS]# docker ps
    4. CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
    5. c4c768ff0de6 delron/fastdfs "/usr/bin/start1.sh …" 24 seconds ago Up 24 seconds

    构建Storage容器

    使用docker镜像构建storage容器,用于启动存储服务器,提供容量和备份服务。

    在执行下面命令时特别需要提醒的时,对应的IP地址,需要修改为tracker服务的IP地址,由于是在同一台电脑上操作,这里使用本机的内网地址即可,22122是tracker对应的端口。
    其中8888为Nginx对应的访问端口,23000是storage服务端口。

    docker run -d --network=host --name storage -e TRACKER_SERVER=192.168.216.130:22122 -v /data/fastDFS/storage/:/var/fdfs -e GROUP_NAME=group1 delron/fastdfs storage
    1. [root@localhost DockerDFS]# docker run -d --network=host --name storage -e TRACKER_SERVER=192.168.216.130:22122 -v /data/fastDFS/storage/:/var/fdfs -e GROUP_NAME=group1 delron/fastdfs storage
    2. cd9de13334ebf8284b3088b08e7375c4cf43fe5c106db990ab37b877927ddaec

    查看docker的服务情况

    1. [root@localhost DockerDFS]# docker ps -a
    2. CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
    3. cd9de13334eb delron/fastdfs "/usr/bin/start1.sh …" About a minute ago Up About a minute storage
    4. c4c768ff0de6 delron/fastdfs "/usr/bin/start1.sh …" 8 minutes ago Up 8 minutes tracker

    修改配置

    经过上面的步骤,tracker和storage都启动完成。我们可以进入对应的docker容器查看一下默认的配置情况。
    进入docker的命令为:docker exec -it [CONTAINER ID] bash
    先进入storage,查看其对应配置文件中关于http访问的配置,配置文件在/etc/fdfs目录下的storage.conf。在最后一行可以看到如下配置:http.server_port=8888
    也就是说,这个docker镜像中默认监听的是8888端口,当然此配置是需要修改的。如果修改为其他端口,对应的Nginx配置也需要修改

    1. [root@localhost DockerDFS]# docker exec -it cd9de13334eb bash
    2. [root@localhost nginx-1.12.2]# ll
    3. total 708
    4. -rw-r--r--. 1 1001 1001 278202 Oct 17 2017 CHANGES
    5. -rw-r--r--. 1 1001 1001 423948 Oct 17 2017 CHANGES.ru
    6. -rw-r--r--. 1 1001 1001 1397 Oct 17 2017 LICENSE
    7. -rw-r--r--. 1 root root 376 Apr 29 2018 Makefile
    8. -rw-r--r--. 1 1001 1001 49 Oct 17 2017 README
    9. drwxr-xr-x. 6 1001 1001 4096 Apr 29 2018 auto
    10. drwxr-xr-x. 2 1001 1001 168 Apr 29 2018 conf
    11. -rwxr-xr-x. 1 1001 1001 2481 Oct 17 2017 configure
    12. drwxr-xr-x. 4 1001 1001 72 Apr 29 2018 contrib
    13. drwxr-xr-x. 2 1001 1001 40 Apr 29 2018 html
    14. drwxr-xr-x. 2 1001 1001 21 Apr 29 2018 man
    15. drwxr-xr-x. 4 root root 187 Apr 29 2018 objs
    16. drwxr-xr-x. 9 1001 1001 91 Apr 29 2018 src
    17. [root@localhost nginx-1.12.2]# cd conf
    18. [root@localhost conf]# ll
    19. total 36
    20. -rw-r--r--. 1 1001 1001 1077 Oct 17 2017 fastcgi.conf
    21. -rw-r--r--. 1 1001 1001 1007 Oct 17 2017 fastcgi_params
    22. -rw-r--r--. 1 1001 1001 2837 Oct 17 2017 koi-utf
    23. -rw-r--r--. 1 1001 1001 2223 Oct 17 2017 koi-win
    24. -rw-r--r--. 1 1001 1001 3957 Oct 17 2017 mime.types
    25. -rw-r--r--. 1 1001 1001 2656 Oct 17 2017 nginx.conf
    26. -rw-r--r--. 1 1001 1001 636 Oct 17 2017 scgi_params
    27. -rw-r--r--. 1 1001 1001 664 Oct 17 2017 uwsgi_params
    28. -rw-r--r--. 1 1001 1001 3610 Oct 17 2017 win-utf

    修改后的内容如下

    vi nginx.conf
    1. server {
    2. listen 8888;
    3. server_name localhost;
    4. location ~/group[0-9]/ {
    5. ngx_fastdfs_module;
    6. #root html;
    7. #index index.html index.htm;
    8. }
    9. }

    查看storage.conf
    确保storage.conf中的配置http.server_port=8888与刚刚nginxd的配置文件中监听的端口号一致

    1. [root@localhost conf]# cd /etc/fdfs/
    2. [root@localhost fdfs]# ll
    3. total 88
    4. -rw-rw-r--. 1 root root 1452 Nov 17 01:07 client.conf
    5. -rw-r--r--. 1 root root 1461 Apr 29 2018 client.conf.sample
    6. -rw-r--r--. 1 root root 955 Apr 29 2018 http.conf
    7. -rw-r--r--. 1 root root 31172 Apr 29 2018 mime.types
    8. -rw-r--r--. 1 root root 3680 Nov 17 01:07 mod_fastdfs.conf
    9. -rw-rw-r--. 1 root root 7894 Nov 17 01:07 storage.conf
    10. -rw-r--r--. 1 root root 7927 Apr 29 2018 storage.conf.sample
    11. -rw-rw-r--. 1 root root 105 Apr 29 2018 storage_ids.conf
    12. -rw-r--r--. 1 root root 105 Apr 29 2018 storage_ids.conf.sample
    13. -rw-rw-r--. 1 root root 7307 Apr 29 2018 tracker.conf
    14. -rw-r--r--. 1 root root 7389 Apr 29 2018 tracker.conf.sample
    vi storage.conf

     设置tracker,storage自启动

    1. 退出docker
    2. [root@localhost /]# exit
    3. exit

     设置自启动

    1. [root@localhost fastDFS]# docker update --restart=always tracker
    2. tracker
    3. [root@localhost fastDFS]# docker update --restart=always storage
    4. storage
  • 相关阅读:
    Windows相关文件、文件夹脚本操作
    【开发问题系列】CSV转Excel
    Blender--》页面布局及基本操作讲解
    Cesium加载离线地图和离线地形
    vue3 快速入门系列 —— 状态管理 pinia
    双指针技术
    教程分享 | 如何获取港口网(全球船舶点和路径)的数据
    Kamiya丨Kamiya艾美捷AREG酶联免疫吸附试验原理
    Vue-2.9单页应用程序
    vue3使用element-plus
  • 原文地址:https://blog.csdn.net/qq_55629923/article/details/127896984