关于Docker中搭建fastDFS
以前搭过一个fastDFS来当图片服务器,用了很久一直都没去理它。前几天毕设也需要用到了,发现重新搭完有各种各样奇奇怪怪的问题,storage服务启动的时候总是不动,但也没有卡住,Ctrl+C还起作用。
看了看日志,相应的时间都有输出,也没有报错,找了两天也没找到相关的解答。于是就放弃了
于是乎,干脆把整个阿里云服务器重置,用Docker来搭建
1、安装Docker
我用的是阿里云的esc服务器(因为学生价很便宜)
操作系统:CentOS 7.4 64
首先登陆到服务器,安装需要的环境
yum install -y yum-utils device-mapper-persistent-data lvm2
设置阿里云的镜像下载源:
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
2、下载安装对应的镜像
下载docker的fastDFS镜像:(可以只下载,该方法是直接运行 如果没有镜像源就下载)
docker run -d --restart=always --privileged=true --net=host --name=fastdfs -e IP=<输入你的ip
如果是云服务器的话 请输入外网ip> -e WEB_PORT=80 -v ${HOME}/fastdfs:/var/local/fdfs registry.cn-beijing.aliyuncs.com/tianzuo/fastdfs
如果想只是单独下载镜像的话(但是还是要执行上面那一句):
docker pull fastdfs
那么分析一下这句下载并运行:
其中,-v ${HOME}/fastdfs:/var/local/fdfs是指:将${HOME}/fastdfs
这个目录挂载到容器里的/var/local/fdfs
这个目录里
这样就已经下载并设置好了(妈耶 比我以前自己慢慢搭快了不知道多少多少多少)
3、检查运行
既然已经搭建完毕,那就来尝试一下能不能上传吧。
依旧是命令行 敲:
docker exec -it fastdfs /bin/bash
这句话是用来进入名为fastdfs的docker容器
然后搞事情:
echo "xixixixixi">try.html
生成一个try.html文件 内容是xixixixixi 然后上传
fdfs_test /etc/fdfs/client.conf upload try.html
见证奇迹的时候到啦~!
结果》》》》》
我当时就懵了 怎么回事??
一度怀疑自己是不是个二*,然后无限在删除重新安装中度过了好几天。
哦豁,顺便说一下docker的查看和删除命令:
//退出容器
exit
//查看已下载的镜像:
docker images
//查看安装的容器
docker ps -a
//查看运行中的docker编号
docker ps -q
//停止某容器
docker stop <容器编号前两位>
//运行某容器
docker start <容器编号前两位>
//重启
docker restart <容器编号前两位>
//停止所有运行中的容器
docker stop $(docker ps -q)
//删除某个容器
docker rm <容器编号前两位>
//删除某个镜像
docker rmi <镜像名字>
在我懵了好多天之后,找了很多很多相关的错误都实验过(我怕不是个大*)
终于发现了问题所在,是我曾经怀疑过,但又被自己否定的:阿里云安全组。
在以往被人攻击过当矿机之后,我安全组设置的都是网段访问,而这一次我也是,将22122和23000进行网段开放。然后我突发奇想,会不会是阿里云它自己拦截了自己??
然后添加多了一个安全组,设置放开它自己(上面的两个是它自己的ip 下面两个是我工作环境的网段)
然后它就。。。
好的我认输还不行吗
部分内容来自:使用Docker一键搭建FastDFS+Nginx分布式文件服务器 来自:VicterTian