文章目录
fastDFS安装
看了黑马视频动手试了下,中间碰到connection time out问题,是端口不通。
开启防火墙端口
8080是内置nginx的默认访问端口
8888 23000 22122是/etc/fdfs/storage.conf里定义的通信端口,详细可百度
# 1.编辑防火墙配置文件
vi /etc/sysconfig/iptables
# 2.增加4行
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8888-j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 23000-j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22122-j ACCEPT
# 3.重启防火墙
service iptables restart
# 4.重启docker
systemctl restart docker
拉取镜像
docker pull morunchang/fastdfs
运行tracker
docker run ‐d ‐‐name tracker ‐‐net=host morunchang/fastdfs sh tracker.sh
运行storage
<>的内容需要替换
要增加新的storage服务器时,再次运行该命令,注意更换 新组名
docker run ‐d ‐‐name storage ‐‐net=host ‐e TRACKER_IP=<宿主机IP>:22122 ‐e GROUP_NAME=<groupName> morunchang/fastdfs sh storage.sh
Springboot构建
引入依赖
<dependency>
<groupId>net.oschina.zcx7878</groupId>
<artifactId>fastdfs-client-java</artifactId>
<version>1.27.0.0</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
resources下新建fdfs_client.conf
connect_timeout = 60
network_timeout = 60
http.tracker_http_port = 8080
tracker_server = 192.168.7.163:22122
application.yml
spring:
servlet:
multipart:
max‐file‐size: 100MB
max‐request‐size: 100MB
server:
port: 9001
FastDfsClient.java
import org.csource.common.NameValuePair;
import org.csource.fastdfs.*;
import org.slf4j