遇到的问题
storage.conf 配置容器 tracker_server [容器]:22122
tracker_server=172.17.0.2:22122
百度一番:尝试将 tracker_server 改为 [宿主机]:22122
{
"timestamp": "2021-10-09T07:56:09.902+0000",
"status": 500,
"error": "Internal Server Error",
"message": "无法获取服务端连接资源:can't create connection to/172.17.0.1:23000",
"path": "/upload/inputStream3"
}
??? 怎么是 172.17.0.1
查看docker网络
tracker把Docker容器的网关地址当成了storage的地址
尝试着容器内添加 iptables NAT规则
iptables -t nat -A POSTROUTING -p tcp -m tcp --dport 22122 -d 172.17.0.2 -j SNAT --to 192.168.153.103
无效 ,还是一样的报错
解决方案
参考:https://www.cnblogs.com/LUA123/p/11529356.html
docker --net=host
sudo docker run -d --net=host a:v1
storage.conf
tracker_server=192.168.153.103:22122
Springboot application.yml
################## fastdfs 参数配置 ##################
fdfs:
so-timeout: 1501
connect-timeout: 601
thumb-image: # 缩略图
width: 60
height: 60
tracker-list: # tracker地址
- 192.168.153.103:22122 # 宿主机:22122
#- 192.168.153.103:22123