fastdfs-開發測試環境搭建

準備docker環境(略)
編寫docker-compose.yml
version: '3'
services:
  fastdfs:
    image: registry.cn-hangzhou.aliyuncs.com/qbanxiaoli/fastdfs
    container_name: fastdfs-single
    environment:
      # nginx服務端口,默認80端口,可修改
      WEB_PORT: 9080
      # tracker_server服務端口,默認22122端口,可修改
      FDFS_PORT: 22122
      # fastdht服務端口,默認11411端口,可修改
      FDHT_PORT: 11411
      # docker所在的宿主機內網地址,默認使用eth0網卡的地址
      IP: 192.168.31.163
    volumes:
      # 將本地目錄映射到docker容器內的fastdfs數據存儲目錄,將fastdfs文件存儲到主機上,以免每次重建docker容器,之前存儲的文件就丟失了。
      - ./fastdfs:/var/local
    # 網絡模式爲host,可不暴露端口,即直接使用宿主機的網絡端口,只適用於linux系統
    network_mode: host
引入依賴配置
        <dependency>
            <groupId>com.github.tobato</groupId>
            <artifactId>fastdfs-client</artifactId>
            <version>${fastdfs-version}</version>
        </dependency>
編寫測試代碼
fdfs:
  thumb-image:             #縮略圖生成參數
    width: 150
    height: 150
  tracker-list:            #TrackerList參數,支持多個
    - 192.168.31.163:22122
@SpringBootTest
@RunWith(SpringRunner.class)
@Slf4j
public class FastFileStorageClientTest {

    @Autowired
    private FastFileStorageClient storageClient;

    @Test
    public void testUploadFile() throws IOException {
        //URL testResource = FastFileStorageClientTest.class.getResource("/application.yml");
        //log.info(testResource.toString());
        Resource testResource = new ClassPathResource("/application.yml");
        StorePath storePath = storageClient.uploadFile(new FastFile.Builder()
                .withFile(testResource.getInputStream(), testResource.contentLength(), "yml")
                .build()
        );

        log.info(storePath.getFullPath());
    }
}
更多使用案例

https://github.com/tobato/FastDFS_Client/tree/master/src/test/java/com/github/tobato/fastdfs/service

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章