https://blog.csdn.net/weixin_40247263/article/details/81087726

搭建过程参考 作者 https://me.csdn.net/feng_qi_1984 的课程视频

声明:集群版是在我之前写的单机版基础之上进行搭建的,我将安装了fastfds单机版的docker打包成了镜像。

如对fastfds搭建流程不熟悉者,需先参阅之前的文章。点击进入文章

首先借鉴一个公众号的两张图来说明一下 fastfds 上传下载的流程,公众号为 "Java架构师之路"

我搭建的思路是,两个tracker、四个storage,然后通过nginx进行反向代理访问图片。

下面演示搭建步骤

先配置几个虚拟ip

运行上次打包的镜像,创建docker容器

docker run --privileged=true -itd -v /soft/:/back -p 192.168.46.230:80:80 -p 192.168.46.230:22122:22122 -p 192.168.46.230:8080:8080 529c212ff162 /bin/bash

进入容器

docker exec -it 0d581e092e1d /bin/bash

(一)tracker

集群版中 配置 tracker 修改tracker.conf文件

# cd /etc/fdfs/

# vi tracker.conf

修改 store_lookup=2 (0代表轮询,1代表固定group,2代表负载均衡)

启动 tracker

# service fdfs_trackerd start

查看一下

# netstat -unltp | grep fdfs

备用 tracker 进行相同操作

(二)storage

配置storage的配置文件

# cd /etc/fdfs/

# vi storage.conf

修改tracker_server

配置group_name 我的是两个1两个2

把主备两个tracker都配置上

tracker_server=172.17.0.34:22122

tracker_server=172.17.0.36:22122

修改/etc/fdfs/目录下的mod_fastdfs.conf

connect_timeout=10

tracker_server 主备两个都要配置       且更改  group_count = 2

我是设置了两个组 每个组两个storage

再配置group1和group2

修改nginx配置文件

# cd /usr/local/nginx/conf/

# vi nginx.conf

listen 8888; 由于storage的端口号为8888 所以这里要修改

如果是group2的话 需要修改group2

修改完以后 保存退出

将刚刚配置好的storage容器 打包成镜像

docker commit f790145a83a2 storage:v1

然后依旧是端口号映射、硬盘挂载创建容器,注意要更改ip地址,然后用新打包好的镜像

docker run --privileged=true -itd -v /soft/:/back -p 192.168.46.235:80:80 -p 192.168.46.235:23000:23000 -p 192.168.46.235:8888:8888 cea52388dba7 /bin/bash

注意 这里的 端口号 做了 修改

安装好以后 进入容器。 直接启动 storage服务 和 nginx 服务就行了

然后继续 安装 容器

这次进入以后 将 storage.conf 和 mod_fastdfs.conf 中的 groupname 修改为 group2

storage.conf

mod_fastdfs.conf

nginx 的配置文件 也要修改

再 启动 storage 服务 和 nginx 服务

然后再 安装一个容器 同上

安装并配置完以后

在cd /usr/bin 这个 文件夹下面 有很多可执行的脚本。

我们通过fdfs_monitor /etc/fdfs/storage.conf 命令

可以查看到 以下内容

再往下 可以看到 分别有哪些组,每个组里有哪些storage 以及这些storage的状态

(三) 测试一下

进入 主 tracker 也就是 第一个配置的那个 tracker

修改 /etc/fdfs/client/conf 文件

# /usr/bin/fdfs_test /etc/fdfs/client.conf upload /back/3.jpg

添加路由

复制地址,输入端口号 8888 可以访问

通过linux的ip也可以访问

由于我这个是group2,那么group2中的另一个 storage中应该也存放了该图片

上传虽然能成功 但是访问的时候IP都不同 所以访问起来很不方便 可以再用一个nginx做一个反向代理

# cd /usr/local/nginx/conf/

# vi nginx.conf

启动 nginx

就可以通过 nginx 的ip地址 加上后面的 路径 访问图片了

docker下搭建fastfds的更多相关文章

  1. docker下搭建fastfds集群版

    搭建过程参考 作者 https://me.csdn.net/feng_qi_1984 的课程视频 声明:集群版是在我之前写的单机版基础之上进行搭建的,我将安装了fastfds单机版的docker打包成 ...

  2. Linux 使用 docker 下搭建xunsearch 搜索引擎服务

    Linux 使用 docker 下搭建 xunsearch 搜索引擎服务 安装 docker 环境(菜鸟教程有说明) 安装docker说明 下载并运行 xunsearch 的服务端:docker安装x ...

  3. 实战maven私有仓库三部曲之三:Docker下搭建maven私有仓库

    本章是<实战maven私有仓库>系列的第三篇,在前两章中,我们先在linux搭建maven私有仓库,然后在开发环境使用此仓库,本章我们在docker下快速搭建maven私有仓库,然后像前面 ...

  4. docker下搭建owncloud

    在ubuntu下 搭建owncloud 用docker-compose启动,owncloud.yml文件内容 owncloud: image: owncloud: restart: always 开机 ...

  5. 在Docker下搭建MySQL双主双重集群(单机展示,与多机原理一致)

    前言 Docker的安装部署&在Docker下MySQL的安装与配置 https://www.cnblogs.com/yumq/p/14253360.html 在Docker进行单机主从复制M ...

  6. Docker下搭建Jenkins构建环境

    首先需要搭建好docker环境的linux系统,这个教程多如牛毛,在此不再赘述. 然后编写一个dockerfile来生成一个镜像,dockerfile其实就是一系列命令的集合,有点像windows的批 ...

  7. Docker下搭建mongodb副本集

    背景 有需求需要对mongodb做一个容灾备份.根据官网,发现mongodb最新版本(4.0)已经抛弃了主从模式而采用副本集进行容灾.副本集的优势在于:"有自动故障转移和恢复特性,其任意节点 ...

  8. docker下搭建zipkin for mysql

    docker pull openzipkin/zipkin 新建docker-compose.yml加入以下内容,自行修改. version: ' services: # The zipkin pro ...

  9. 用Docker下搭建GitLab

    最近试了一下Docker,发现用它搭建服务十分方便,就用它搭建了一个gitlab练练手. 首先下载gitlab镜像:         docker image pull gitlab/gitlab-c ...

随机推荐

  1. Visual Studio 2017 离线安装包

    vs_community.exe --layout D:vs2017offline-en --add Microsoft.VisualStudio.Workload.ManagedDesktop -- ...

  2. python笔记26-编码规范层级目录

    bin-放的可执行文件 conf-放的配置文件 lib-放的一些lib库 temp-放的零时文件 logs-日志 core-核心逻辑 data-存放数据 README-帮助文档 start_shop. ...

  3. jmeter之headers中的Content-Type.

    jmeter在发送http post请求时,会把body  里的数据格式给携带上(最好携带上),一般在信息头里增加.另因一篇文章.感觉写的非常好.https://imququ.com/post/fou ...

  4. webDriver定位元素的方法

    在UI层面的自动化测试开发中,元素的定位与操作是基础,也是经常遇到的困难所在.webdriver提供了8种定位: 1. id定位:find_element_by_id("id值") ...

  5. linux之时间设置

    date 显示与设置系统时间 %Y      year %m moth 月 %d day 日期 %H hour 小时 %M      minute   分钟 %S      sec  秒 +%F    ...

  6. 删除Docker镜像

    删除镜像:1)先杀死镜像中所有容器   docker kill $(docker ps -a -q)2)删除镜像中所有容器:   docker rm $(docker ps -a -q)3)删除镜像: ...

  7. django + 阿里云云服务器网站搭建

    最近自己用django搭了一个小网站,个人的项目挂在了github上 https://github.com/LOMOoO/tpure 预计是挂在阿里云的云服务器上运行,云服务器买好了,阿里云的域名也买 ...

  8. 剑指Offer 59. 按之字形顺序打印二叉树 (二叉树)

    题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推. 题目地址 https://www.nowco ...

  9. linux 安装 ftp 实现文件共享

    转载:http://blog.sina.com.cn/s/blog_165e646820102xe1q.html 参考:1.http://www.cnblogs.com/mrcln/p/6179673 ...

  10. IntelliJ IDEA 2018 破解过程[详细步骤](Mac OS & Windows)

    注册码获取地址:http://idea.lanyus.com/ 1.软件下载 首先进入https://www.jetbrains.com官网进行下载. 2.下载破解包 可百度搜索JetbrainsCr ...