(操作转载)docker安装fastdfs+nginx及碰到的一些问题
安装是转载的想看原文请飞 https://www.it610.com/article/1291662666259046400.htm
1.查看fastdfs的镜像
docker search fastdfs
2.拉取镜像
docker pull delron/fastdfs
这个版本的镜像是比较全的,含有fastdfs以及nginx以及其相关的配置。
3.启动tracker服务
docker run -d --network=host --name tracker -v /var/fdfs/tracker:/var/fdfs delron/fastdfs tracker
4.启动storage服务
docker run -d --network=host --name storage -e TRACKER_SERVER=你的ip:22122 -v /var/fdfs/storage:/var/fdfs -e GROUP_NAME=group1 delron/fastdfs storage
5.查看启动后的状态
6.修改nginx端口(这里默认是8888)–也可以不修改
这里以修改为8874为例子:
- 6.1.进入storage容器:docker exec -it storage bash
- 6.2.修改storage内部http.server_port:
vi /etc/fdfs/storage.conf
,可以看到在最后一行 http.server_port=8888,将其改成为http.server_port=8874即可。 - 6.3.因为修改了storage,所以还需要修改nginx,保持一致:vi /usr/local/nginx/conf/nginx.conf,然后将其内部的 server {
listen 8888; …} 改成 server {
listen 8874; …} - 6.4.命令退出:exit
7.最后需要重启容器:
docker restart storage
8.测试是否配置成功
- 1.拷贝一个txt文件到目录/var/fdfs/tracker/storage
- 2.进入storage容器:docker exec -it 953f982bd474 bash
进入fdfs目录:cd /var/fdfs
运行命令:/usr/bin/fdfs_upload_file /etc/fdfs/client.conf test.png
运行成功后会返回地址: group1/M00/00/00/rBFYll7Qw7uAPuhdAAAABncc3SA243.txt
-
1:查看防火状态
systemctl status firewalld
service iptables status
2:暂时关闭防火墙
systemctl stop firewalld
service iptables stop
3:永久关闭防火墙
systemctl disable firewalld
chkconfig iptables off
4:重启防火墙
systemctl enable firewalld
service iptables restart
5:永久关闭后重启
//暂时还没有试过
chkconfig iptables on
或者开放相应的端口
- 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=8874/tcp
firewall-cmd --reload
其中如果是阿里云,需要在安全组规则中添加相应的端口
11补充:
- docker container update --restart=always tracker //开机启动 docker
container update --restart=always storage //开机启动
可以在重启docker的时候自行启动
https://www.cnblogs.com/prince5460/p/11870115.html
https://www.cnblogs.com/jxldjsn/p/10794171.html
https://blog.csdn.net/dsh153/article/details/100083012
安装到此结束
下面是自己碰到的一点问题
项目中上传文件失败提示
com.github.tobato.fastdfs.exception.FdfsServerException: 错误码:2,错误信息:找不到节点或文件
给人第一感觉就是tracker storage 通信地址没配置好没访问到服务(反正我是这么想的)
按照上面教程我对外映射的是6080我先是访问了下 nginx发现可以访问我就想当然以为storage启动成功了
开始一顿操作各个地方的地址还重新安装了遍,都还是错误(zz行为)
最后打开storage的docker日志
emmmm storage 没启动起 因为 地址的这个文件 然后 我就进容器删了 完美解决。
其实也没啥 就想说先准确的确定问题才能解决问题!!!
fastdfs分享到这。。
谢谢浏览!!
如有问题 请大佬不吝赐教
2021-02-26 16:02:08