docker搭建fastdfs(转)

2019-07-19  本文已影响0人  平面小狮子

1、首先下载fastdfs镜像

docker pull delron/fastdfs

2、使用docker镜像构建tracker容器(跟踪服务器,起到调度的作用),这里tracker服务将会自动映射到宿主机上

注意:docker 的 -v 参数,可以自动挂载宿主机的文件件到容器中去,这样宿主和容器就可以进行无障碍的文件共享,我们通过-v参数,把宿主机的root目录自动挂载到docker容器中的/var/root目录中去

docker run -d --network=host --name tracker -v /root:/var/root delron/fastdfs tracker

3、docker镜像构建storage容器(存储服务器,提供容量和备份服务),这里storage容器需要依赖tracker服务,传入你的tracker服务的ip地址,端口默认是22122,ip地址也就是你宿主机的ip

docker run -d --network=host --name storage -e TRACKER_SERVER=192.168.99.100:22122 -v /root:/var/root -e GROUP_NAME=group1 delron/fastdfs storage

注意:上面ip为docker的ip

此时,命令行输入 docker 就可以看到两套服务都已经启动。

docker进程查看

然后分别进入宿主的命令行以及进入容器storage的命令行,发现文件夹已经共享

文件夹已共享

进入正在后台运行的storage容器

docker exec -it storage /bin/bash

下面来个例子(我们可以利用docker的exec命令不进入容器,直接在宿主机的环境下调用容器内的命令,因为文件夹已经共享,所以我们输入的文件目录虽然是容器中的/var/root目录,但是实际上该上传的文件就在宿主的/root目录中)

docker exec -i storage /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /var/root/test.mp4

上传成功后,fastdfs将会返回视频的网络地址

返回图片地址

浏览器访问一下,没有问题

正常访问

如果访问不到的话,排查防火墙8888端口是否开启,fastfds默认访问端口为8888。

Docker搭建分布式文件系统FastDFS

上一篇下一篇

猜你喜欢

热点阅读