前几天写了替伊成写了一遍博客,在linux下安装FastDFS文件系统,也说明这个东西的好处。今天呢,我终于把docker下搭建FastDFS文件系统整出来了!说实话还是有点费劲的!
废话就不多说了,开始!
1.查看fastdfs的镜像!
docker search fastdfs
2.拉取镜像
docker pull delron/fastdfs
3.启动tracker服务
docker run -d --network=host --name tracker -v /home/tracker:/var/fdfs delron/fastdfs tracker
4.启动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地址
5.docker ps 查看一下已经启动的容器
俩容器已经成功启动了!
6.进入到storage容器中
docker exec -it 3e54741d7b9b bash
这里说明一下,进入容器中后你会发现进入了一个nginx文件下,是的没错!这个fastdfs容器自带了nginx,重点是因为你现在进入了容器中,而你并不能通过xftp访问到这个文件夹,后面我会讲到文件路径的问题
7.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
8.那么我在访问的时候不想用默认端口8888,因为这个端口可能比较常用,被占用了就不好了!那么这时候就可以把它修改一下了。
vi /etc/fdfs/storage.conf
翻到最后一行,如下图,我改为了8001
9.再将nginx修改,
vi /usr/local/nginx/conf/nginx.conf
如下图
10.修改完成后需要重启容器,端口才能生效,当然你还需要开启8001端口!
docker restart 3e54741d7b9b
firewall-cmd --zone=public --permanent --add-port=8001/tcp
11.我们现在将一张图片上传到fastdfs服务上,看看效果,再次进入容器
docker exec -it 3e54741d7b9b bash
进入fdfs这个文件下!
cd /var/fdfs
运行命令
/usr/bin/fdfs_upload_file /etc/fdfs/client.conf 1.jpg
这时候你会问,你他妈的1.jpg哪来的,当时我整这个时候也是懵逼的,网上到了这一步就是一概而过,很难搞!找了半天,我发现了其中密码!
在之前的3,4步中,细心的伙伴发现了没有
也就是容器挂载的位置!
12.通过xftp查看一下这个home文件夹
会有俩个文件夹,将你的图片1.jpg放到storage文件夹下就可以了!
13.接着11步,运行完成以后
/usr/bin/fdfs_upload_file /etc/fdfs/client.conf 1.jpg
会出现如下图,会返回一个地址
这样就以为这上传成功了!
在浏览器上look一下,
至此,这个文章就算完成了,在我学习的过程中,他们会把转储格式也会贴上来,这里我就不贴了,想了解的大家多百度百度!整体来讲,docker安装要比centos简单,简略了关联linux这一块!
进步ing!