docker中部署fastdfs(服務器/虛擬機通用版)

FastDFS部署

1.拉取鏡像

docker pull delron/fastdfs

2.構建tracker容器

跟蹤服務器,起到調度作用,這裏tracker服務將會自動映射到宿主機上。注意:docker的-v參數們可以自動的掛載宿主機的文件到容器中去。
docker run -d --network=host --name tracker -v /root:/var/root delron/fastdfs tracke

3. 構建storage容器

存儲服務器,提供容量的備份服務,這裏storage容器依賴tracker服務,傳入你的tracker服務的ip地址,端口默認是22122,地址也就是你的宿主機的ip(若是服務器即是你的公網ip
docker run -d --network=host --name storage -e TRACKER_SERVER=[你自己的ip]:22122 -v /root:/var/root -e GROUP_NAME=group1 delron/fastdfs storage
若docker容器中啓動啓動容器中存在上述容器,這表示fastdfs容器啓動成功。
在這裏插入圖片描述

4.上傳圖片測試

4.1引入依賴

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

4.2配置屬性

fdfs:
  so-timeout: 2500
  connect-timeout: 6000
  thumb-image: #縮略圖
    width:  60
    height: 60
  tracker-list: #tracker地址
    - [你自己的ip]:22122	#可以配置多個
#自定義屬性,用來把圖片信息傳遞到數據庫或緩存中
air:
  upload:
    baseUrl:[你自己的ip]:8888
    allowTypes:
      - image/jpeg
      - image/png
      - image/bmp
      - image/jpg

4.3測試代碼

@RunWith(SpringRunner.class)
@SpringBootTest
public class UploadServiceTest {
    @Autowired
    private FastFileStorageClient storageClient;
    @Autowired
    private ThumbImageConfig thumbImageConfig;

    @Test
    public void testUpload() throws IOException {
        File file = new File("C:/Users/13510/Desktop/master.jpg");
        //上傳並生成縮略圖
        StorePath storePath = this.storageClient.uploadFile(new FileInputStream(file), file.length(), "jpg", null);
        //此處的分則是指linux下的分組
        //帶分組的路徑
        System.out.println(storePath.getFullPath());
        //不帶分組的路徑
        System.out.println(storePath.getPath());
    }

在這裏插入圖片描述
表示上傳成功!

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