抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

Docker搭建fastdfs

centos7怎么安装docker请看
https://blog.csdn.net/qq_36357242/article/details/100144208

查看fastdfs的镜像

docker search fastdfs

拉取镜像

docker pull delron/fastdfs

启动tracker服务

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

启动storage服务

docker run -d --network=host --name storage -e TRACKER_SERVER=你的ip:22122 -v /home/storage:/var/fdfs -e GROUP_NAME=group1 delron/fastdfs storage

注意指向你服务器的ip地址

docker ps 查看已启动的容器

俩容器已经成功启动了!

进入到storage容器中

docker exec -it 3e54741d7b9b bash

这里说明一下,进入容器中后你会发现进入了一个nginx文件下,是的没错!这个fastdfs容器自带了nginx,重点是因为你现在进入了容器中,而你并不能通过xftp访问到这个文件夹,后面我会讲到文件路径的问题

fastdfs默认的端口有三个8888,23000,22122,分别解释一下(我个人理解,对与不对我不保证,因为我也是第一次玩),8888是默认的nginx代理端口,23000是storage服务端口,22122是tracker服务端口。

https://www.cnblogs.com/smartycity/p/5752865.html,这篇文章解释了!

所以为了图片上传成功,需要开发这三个端口!

firewall-cmd --zone=public --permanent --add-port=23000/tcp
firewall-cmd --zone=public --permanent --add-port=22122/tcp
firewall-cmd --zone=public --permanent --add-port=8888/tcp

默认端口修改

那么我在访问的时候不想用默认端口8888,因为这个端口可能比较常用,被占用了就不好了!那么这时候就可以把它修改一下了。

vi /etc/fdfs/storage.conf

翻到最后一行,如下图,我改为了8001

nginx修改

vi /usr/local/nginx/conf/nginx.conf

如下图

修改完成,重启容器,端口才能生效,还需开启8001端口

docker restart 3e54741d7b9b
firewall-cmd --zone=public --permanent --add-port=8001/tcp

我们现在将一张图片上传到fastdfs服务上,看看效果, 再次进入容器

docker exec -it 3e54741d7b9b bash

进入fdfs这个文件下!

cd /var/fdfs

运行命令(注1)

/usr/bin/fdfs_upload_file /etc/fdfs/client.conf 1.jpg

这时候你会问,你他妈的1.jpg哪来的,当时我整这个时候也是懵逼的,网上到了这一步就是一概而过,很难搞!找了半天,我发现了其中秘密!

在之前的启动服务的时候,细心的伙伴发现了没有

也就是容器挂载的位置!

通过xftp查看home文件夹

会有俩个文件夹,将你的图片1.jpg放到storage文件夹下就可以了!

上传文件

/usr/bin/fdfs_upload_file /etc/fdfs/client.conf 1.jpg

会出现如下图,会返回一个地址

这样就以为这上传成功了!

在浏览器上look一下,

至此,这个文章就算完成了,在我学习的过程中,他们会把转储格式也会贴上来,这里我就不贴了,想了解的大家多百度百度!整体来讲,Docker搭建要比centos简单,简略了关联linux这一块!

End

评论