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

news2024/11/18 7:30:48

安装需要的软件包

yum install -y yum-utils

设置yum源

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

 拉取镜像

docker pull delron/fastdfs
[root@localhost ~]# docker pull delron/fastdfs
Using default tag: latest
latest: Pulling from delron/fastdfs
469cfcc7a4b3: Downloading [====================================>              ]  53.55MB/73.17MB
4b4f08bd0171: Downloading [===============================>                   ]  55.65MB/88.7MB
95eef9978b96: Download complete
aff83d00c747: Download complete
1e95dffa1075: Download complete
f114184ac28c: Download complete
649b2ad6afe2: Download complete
8ab2127a38c5: Download complete
4d12f9bd27c7: Download complete
bfc05d82f0a6: Download complete
76f2a6d84a19: Download complete
89bd9c4e6fea: Download complete
6c06548e40ac: Download complete
11186700b494: Download complete

创建fastDFS挂载路径

[root@localhost ~]# mkdir DockerDFS
[root@localhost ~]# cd DockerDFS/
[root@localhost DockerDFS]# ll
total 0
[root@localhost DockerDFS]# mkdir tracker
[root@localhost DockerDFS]# mkdir storage
[root@localhost DockerDFS]# ls
storage  tracker
[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
[root@localhost DockerDFS]# docker run -d --network=host --name tracker -v /data/fastDFS/tracker/:/var/fdfs delron/fastdfs tracker
c4c768ff0de669d4a5f82d402600e4aab280d79163991801f0e21681da9d016e
[root@localhost DockerDFS]# docker ps
CONTAINER ID   IMAGE            COMMAND                  CREATED          STATUS          PORTS                                                            NAMES
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
[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
cd9de13334ebf8284b3088b08e7375c4cf43fe5c106db990ab37b877927ddaec

查看docker的服务情况


[root@localhost DockerDFS]# docker ps -a
CONTAINER ID   IMAGE                 COMMAND                  CREATED              STATUS                        PORTS                                                            NAMES
cd9de13334eb   delron/fastdfs        "/usr/bin/start1.sh …"   About a minute ago   Up About a minute                                                                              storage
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配置也需要修改

[root@localhost DockerDFS]# docker exec -it cd9de13334eb bash
[root@localhost nginx-1.12.2]# ll
total 708
-rw-r--r--. 1 1001 1001 278202 Oct 17  2017 CHANGES
-rw-r--r--. 1 1001 1001 423948 Oct 17  2017 CHANGES.ru
-rw-r--r--. 1 1001 1001   1397 Oct 17  2017 LICENSE
-rw-r--r--. 1 root root    376 Apr 29  2018 Makefile
-rw-r--r--. 1 1001 1001     49 Oct 17  2017 README
drwxr-xr-x. 6 1001 1001   4096 Apr 29  2018 auto
drwxr-xr-x. 2 1001 1001    168 Apr 29  2018 conf
-rwxr-xr-x. 1 1001 1001   2481 Oct 17  2017 configure
drwxr-xr-x. 4 1001 1001     72 Apr 29  2018 contrib
drwxr-xr-x. 2 1001 1001     40 Apr 29  2018 html
drwxr-xr-x. 2 1001 1001     21 Apr 29  2018 man
drwxr-xr-x. 4 root root    187 Apr 29  2018 objs
drwxr-xr-x. 9 1001 1001     91 Apr 29  2018 src
[root@localhost nginx-1.12.2]# cd conf
[root@localhost conf]# ll
total 36
-rw-r--r--. 1 1001 1001 1077 Oct 17  2017 fastcgi.conf
-rw-r--r--. 1 1001 1001 1007 Oct 17  2017 fastcgi_params
-rw-r--r--. 1 1001 1001 2837 Oct 17  2017 koi-utf
-rw-r--r--. 1 1001 1001 2223 Oct 17  2017 koi-win
-rw-r--r--. 1 1001 1001 3957 Oct 17  2017 mime.types
-rw-r--r--. 1 1001 1001 2656 Oct 17  2017 nginx.conf
-rw-r--r--. 1 1001 1001  636 Oct 17  2017 scgi_params
-rw-r--r--. 1 1001 1001  664 Oct 17  2017 uwsgi_params
-rw-r--r--. 1 1001 1001 3610 Oct 17  2017 win-utf

修改后的内容如下

vi nginx.conf
server {
        listen       8888;
        server_name  localhost;

        location ~/group[0-9]/ {
            ngx_fastdfs_module;
            #root   html;
            #index  index.html index.htm;
        }

}

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


[root@localhost conf]# cd /etc/fdfs/
[root@localhost fdfs]# ll
total 88
-rw-rw-r--. 1 root root  1452 Nov 17 01:07 client.conf
-rw-r--r--. 1 root root  1461 Apr 29  2018 client.conf.sample
-rw-r--r--. 1 root root   955 Apr 29  2018 http.conf
-rw-r--r--. 1 root root 31172 Apr 29  2018 mime.types
-rw-r--r--. 1 root root  3680 Nov 17 01:07 mod_fastdfs.conf
-rw-rw-r--. 1 root root  7894 Nov 17 01:07 storage.conf
-rw-r--r--. 1 root root  7927 Apr 29  2018 storage.conf.sample
-rw-rw-r--. 1 root root   105 Apr 29  2018 storage_ids.conf
-rw-r--r--. 1 root root   105 Apr 29  2018 storage_ids.conf.sample
-rw-rw-r--. 1 root root  7307 Apr 29  2018 tracker.conf
-rw-r--r--. 1 root root  7389 Apr 29  2018 tracker.conf.sample
vi storage.conf

 设置tracker,storage自启动

退出docker
[root@localhost /]# exit
exit

 设置自启动

[root@localhost fastDFS]# docker update --restart=always  tracker
tracker
[root@localhost fastDFS]# docker update --restart=always  storage
storage

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/11551.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++ 实用指南

C 发展得非常快!例如,C 标准的页数从 C98/03 的 879 页增加到了 C20 的 1834 页,多了近 1000 页!更重要的是,C 每次修订后,我们都会获得几十个新特性。你需要学习所有这些东西才能写出好代码吗?…

【计算机毕业设计】旅游网站ssm源码

下载链接:https://download.csdn.net/download/licongzhuo/87051535https://download.csdn.net/download/licongzhuo/87051535 一、系统截图(需要演示视频可以私聊) 摘 要 随着人民生活水平的提高,旅游业已经越来越大众化,而旅游业的核心是信息,不论是…

Redis数据结构之——跳表skiplist

写在前面 以下内容是基于Redis 6.2.6 版本整理总结 一、跳表(skiplist) 如何理解跳表?在了解跳表之前,我们先从普通链表开始,一点点揭开跳表的神秘面纱~ 首先,普通单链表来说,即使链表是有序…

第2-3-4章 上传附件的接口开发-文件存储服务系统-nginx/fastDFS/minio/阿里云oss/七牛云oss

文章目录5.3 接口开发-上传附件5.3.1 接口文档5.3.2 代码实现5.3.3 接口测试5.3 接口开发-上传附件 第2-1-2章 传统方式安装FastDFS-附FastDFS常用命令 第2-1-3章 docker-compose安装FastDFS,实现文件存储服务 第2-1-5章 docker安装MinIO实现文件存储服务-springboot整合minio…

MindMaster思维导图及亿图图示会员 超值获取途径

MindMaster思维导图及亿图图示会员 超值获取途径 会员九折优惠方法分享给大家!如果有需要,可以上~ 以下是食用方法: MindMaster 截图 亿图图示 截图 如果需要MindMaster思维导图或者亿图图示会员,可按照如下操作领取超值折扣优惠…

SaaS系统平台赋能大健康产业互联网变革,助力企业提升市场占有率

当前,数字化浪潮正在重塑大健康产业。随着全国多个重要省市的数字医疗、数字医保等措施正火热展开,我国大健康产业的数字化转型进程正在提速,这也为新一轮的行业洗牌带来新的发展机遇。 大健康产业数字化转型痛点:传统医疗信息化…

消息队列之kafka

1.先部署zookeeper集群 2.了解zookeeper 分布式服务系统框架:存储业务服务节点的元数据及状态信息并 负责通知zookeeper上注册服务节点给客户端 一、Zookeeper 概述 官方下载地址:archive.apache.org/dist/zookee… 1.1 Zookeeper 定义 Zookeeper…

使用KNN进行手写体识别和iris数据集分类

文章目录手写体识别iris数据集分类手写体识别 首先使用load_digits将数据加载,这里的数据集有1797个样本,前1384个训练数据而后面的413个样本作为测试集,每个数据集中的样本是8*8像素的图像和一个[0, 9]整数的标签。紧接着输出64个样本的图像…

【Egg从基础到进阶】二:安装本地Mysql

什么是数据库: 数据库是用于将数据持久化存储的一个容器,并且在这个容器处于云端,而不是像游览器的本地存储一样,数据只是针对你当前所在游览器。游览器的存储是一对一的。而线上数据库的存储是一对多的,或者是多对多的…

被欧美公司垄断近 20 年,中国工业软件的机会在哪里?

【CSDN 编者按】工业软件,又被称之为是现代工业体系的“大脑”。近年来,在政府、企业、从业者等各方的齐心协力之下,中国工业软件市场规模不断壮大,逐渐成为“制造大国”。然而,站在全球的角度来看,相较一些…

使用小程序制作一个飞机大战小游戏

此文主要基于微信小程序制作一个飞机大战小游戏,上手即用,操作简单。 一、创建小程序二、页面实现三、代码块一、创建小程序 访问微信公众平台,点击账号注册。 选择小程序,并在表单填写所需的各项信息进行注册。 在开发管理选择开…

rancher部署nginx服务

前言:目前主流的开发模式是前后端分离,前端也会单独打包进行部署,一般就是把前端打包好的文件放到nginx目录下,和nginx一起部署,最终通过nginx来访问。 通用的dockerfile文件,用来构建nginx镜像 FROM ngi…

如何从测试新手变成测试大牛

如何从测试新手变成测试大牛,作为一个刚入行的测试新手,如何让自己提升自身能力,变成一个无所不能的测试大牛,本文将从多个方面来告诉你努力的方向,希望能帮助到你。 一:扎实的测试理论知识 作为一个测试人&#xff0…

nvcc编译器之编译内幕(chapter 23)

目录 2. 编译阶段(步骤) 2.1 NVCC预定义宏 2.2 NVCC编译步骤 2.3 NVCC支持的文件后缀 2.4 支持的编译阶段 3. CUDA 编译内幕 2. 编译阶段(步骤) 2.1 NVCC预定义宏 __NVCC__ 在编译C/C/CUDA源文件时定义 __CUDACC__ 在编译…

[附源码]java毕业设计教师教学评价系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

java之你真正了解抽象类和接口嘛?

🎇🎇🎇作者: 小鱼不会骑车 🎆🎆🎆专栏: 《java练级之旅》 🎓🎓🎓个人简介: 一名专科大一在读的小比特,努力学习编程是我…

Nexus私服仓库Linux、Windows部署教程

Nexus 概述 Nexus 是 Sonatype 公司发布的一款仓库(Repository)管理软件,常用来搭建 Maven 私服,所以也有人将 Nexus 称为“Maven仓库管理器”。 主流的 Maven 仓库管理器主要有以下 3 种:Apache Archiva、JFrog Arti…

软考信息安全工程师案列分析

1.第一题 1.动态存储区,分配存储空间和释放存储空间 3.让argv[]中的第9个字符是十进制65即可。 4.缓冲区溢出漏洞,使用安全的strcpy函数,检测边界 第二题 第三题 1.保证M完整性 不能交换,先hash摘要可以减少加密的计算量。 2.实现…

STM8S系列基于STVD开发,自定义printf函数+TIM5精确延时函数模块化工程示例

STM8S系列基于STVD开发,自定义printf函数TIM5精确延时函数模块化工程示例🎬功能演示 ✨本例也是结合了网络上收集来的printf自定义内容,将其功能模块化,方便移植使用,灵活性很强。 📚相关篇内容《STM8S903…

leetcode:792. 匹配子序列的单词数【子序列二分优化模板 + 大的字符串不变的二分优化】

目录题目截图题目分析ac code总结题目截图 题目分析 简单的子序列判断需要on,那么最后最坏就是omn,25 * 10 ^ 7爆炸因此需要优化子序列判断注意到此时的大字符串是同一个记录每个字母出现的下标遍历word,找到下一个最近的字母出现的位置&…