docker安装fastdfs分布式文件管理系统,并与spring boot整合

直接使用博主构建的镜像

拉取/执行docker-compose up
version: '3'
services:
  tracker:
    container_name: tracker
    image: luhuiguo/fastdfs
    command: tracker
    network_mode: host
    volumes:   
      - /home/docker/fastdfs/tracker/tracker_data:/var/fdfs
  storage0:
    container_name: storage0
    image: luhuiguo/fastdfs
    command: storage
    network_mode: host  
    environment:
      - TRACKER_SERVER=192.168.150.130:22122
    volumes: 
      - /home/docker/fastdfs/storage0:/var/fdfs

整合spring boot

pom文件加入

    <dependency>
        <groupId>com.github.tobato</groupId>
        <artifactId>fastdfs-client</artifactId>
        <version>1.26.2</version>
    </dependency>

增加配置文件

/**
 * 导入FastDFS-Client组件
 * 
 * @author tobato
 *
 */
@Configuration
@Import(FdfsClientConfig.class)
// 解决jmx重复注册bean的问题
@EnableMBeanExport(registration = RegistrationPolicy.IGNORE_EXISTING)
public class ComponetImport {
    // 导入依赖组件
}   

注意:@EnableMBeanExport解决问题JMX重复注册问题,issue #8 issue #18,不要再配置 spring.jmx.enabled=false,以免影响SpringBoot默认的JMX监控。

设置applicaiton.yml

# ===================================================================
# 分布式文件系统FDFS配置
# ===================================================================
fdfs:
  so-timeout: 1501
  connect-timeout: 601 
  thumb-image:             #缩略图生成参数
    width: 150
    height: 150
  tracker-list:            #TrackerList参数,支持多个
    - 192.168.1.105:22122
    - 192.168.1.106:22122 

如果有必要可以参考 apache.pool2 参数配置连接池属性

fdfs:
   ..其他配置信息..
  pool:
    #从池中借出的对象的最大数目
    max-total: 153
    #获取连接时的最大等待毫秒数100
     max-wait-millis: 102

常用功能

TrackerClient - TrackerServer接口
GenerateStorageClient - 一般文件存储接口 (StorageServer接口)
FastFileStorageClient - 为方便项目开发集成的简单接口(StorageServer接口)
AppendFileStorageClient - 支持文件续传操作的接口 (StorageServer接口)

猜你喜欢

转载自blog.csdn.net/sinat_31908303/article/details/80622807