前序
我们知道在centos上安装rabbitmq和fastdfs这样的,需要提前安装环境还要注意版本兼容问题,说实话很麻烦。现在使用docker安装就简便了很多,甚至只需要简单的命令就可以完成!前段时间工作上需要跟同事安装了这两个软件,还是离线安装,花了一天多才搞定,因为没有外网很多环境没有有网情况下那么好装。
准备docker
不论是虚拟机还是服务器,总之要先安装好一个docker,如果没有可以看我的文章《Docker安装教程》,准备好之后开始执行命令
安装命令
拉取镜像
docker pull delron/fastdfs
使用docker镜像构建tracker容器
docker run -dti --network=host --name tracker -v /var/fdfs/tracker:/var/fdfs -v /etc/localtime:/etc/localtime delron/fastdfs tracker
使用docker镜像构建storage容器
TRACKER_SERVER后面跟的是你自己的ip或者是服务器的公网地址,不要使用127.0.0.1这样外网就不能访问了!
docker run -dti --network=host --name storage -e TRACKER_SERVER=39.101.197.96:22122 -v /var/fdfs/storage:/var/fdfs -v /etc/localtime:/etc/localtime delron/fastdfs storage
进入storage容器,到storage的配置文件中配置http访问的端口,配置文件在/etc/fdfs目录下的storage.conf
因为他的默认是8888,而这里我的这个端口被宝塔面板占住了,所以需要更换!
进入容器:
docker exec -it storage /bin/bash
进入 /etc/fdfs,找到storage.conf更改端口
当然这还没有完,这个端口是和Nginx映射的,改了这里就得改Nginx!
进入/usr/local/nginx/conf,修改nginx.conf文件
改下端口号就行,然后重启!
docker restart storage
这里重启之后docker启动会失败:
可以删除/var/fdfs/storage/data目录下的fdfs_storaged.pid 文件,然后重新运行storage
总体流程就是这样,然后我们先去看端口启动情况
netstat -ntpl
ok三个端口全部启动,一个tracker 一个storage 一个Nginx的!
然后我们要注意本地防火墙要开放这三个端口
firewall-cmd --zone=public --permanent --add-port=8887/tcp
firewall-cmd --zone=public --permanent --add-port=22122/tcp
firewall-cmd --zone=public --permanent --add-port=23000/tcp
重载一下,必须执行:
firewall-cmd --reload
如果你的服务器是阿里云,当然你还要开放端口,这里我就不演试了,反正到此为止安装就算完成了!
效果:
一切正常!
后续
其实之前我之前在虚拟机上机装过一次,当时折腾了两个半小时。后来因为本地ip是动态变化的,要时时刻刻映射本地端口我觉得很麻烦,我所以在阿里云上装了一个。第一次我是失败了的,后来我就照着别人的博客重新卸载镜像重新安装了一边才正常。所以安装这种东西不能泄气,而且一旦成功了一次,后面就方便很多!