在搭建fastDFS文件上傳下載服務器之前,你需要准備的有一個可連接的linux服務器,並且該linux服務器上已經安裝了docker,若還有沒安裝docker的,先百度自行安裝docker。
1.執行命令:docker search fastdfs
2.我選擇的是season/fastdfs鏡像,使用的標簽是1.2(之所以選擇這個鏡像,是因為下載量最多,選擇1.2版本 是因為最新版本不穩定,所以使用最新版本之前的穩定版本。我們下載鏡像一定要下載自己的或者官方的鏡像。)
執行命令:docker pull season/fastdfs:1.2
等待一段時間,便可下載完成
此時執行命令:docker images
如果可以看下以下fastdfs的鏡像,即已成功安裝了fastdfs的鏡像
3.執行命令:mkdir -p /data/tracker
該目錄用於和tracker進行目錄掛載,接下來就是創建tracker容器
執行命令:docker run -id --name tracker --restart=always --net host -v /etc/localtime:/etc/localtime -v /data/tracker:/fastdfs/tracker/data season/fastdfs:1.2 tracker
4.執行命令:mkdir -p /data/storage
該目錄存儲上傳的文件,然后是創建storage的容器
執行命令:docker run -id --name storage --restart=always --net host -v /etc/localtime:/etc/localtime -v /data/storage:/fastdfs/store_path -e TRACKER_SERVER="ip:22122" season/fastdfs:1.2 storage
該命令中需要執行TRACKER_SERVER的ip,這個ip換成你自己linux服務器的ip地址
5.將tracker容器中的客戶端配置文件client.conf復制到宿主機,進行修改client.conf配置文件
執行命令:docker cp tracker:/etc/fdfs/client.conf ./
對client.conf文件編輯修改
執行命令:vi client.conf
將tracker_server的ip改為你linux服務器的ip
6.再將拷貝到宿主機上的client.conf文件 復制回tracker容器
執行命令:docker cp client.conf tracker:/etc/fdfs/
7.進入tracker容器,執行命令:docker exec -it tracker bash
創建文件,執行命令:echo "zhangshoufu.com" >index.html
將文件上傳到服務器,執行命令:fdfs_upload_file /etc/fdfs/client.conf index.html
8.此時只是能夠本機訪問,要想web訪問,還必須集成nginx
首先創建nginx配置文件的文件夾,執行命令:mkdir /etc/nginx/ -p
將storage容器中的nginx配置文件拷貝到你創建的nginx文件夾下,執行命令:docker cp storage:/etc/nginx/conf/nginx.conf ./
9.創建nginx的容器,執行命令:docker run -id --name fastdfs_nginx --restart=always -v /data/storage:/fastdfs/store_path -v /etc/nginx/nginx.conf:/etc/nginx/conf/nginx.conf -p 8888:80 -e TRACKER_SERVER=ip:22122 season/fastdfs:1.2 nginx
該命令中需要執行TRACKER_SERVER的ip,這個ip換成你自己linux服務器的ip地址
10.修改nginx的配置文件,執行命令:vi /etc/nginx/nginx.conf
將location 中的內容修改為:
location / {
root /fastdfs/store_path/data;
ngx_fastdfs_module;
}
重啟fastdfs_nginx容器,執行命令:docker restart fastdfs_nginx
linux服務器上訪問你剛上傳的文件,
執行命令:curl -i http://127.0.0.1:8888/group1/M00/00/00/rB4ACV6ab6eAQrtmAAAAEN9dPo040.html
到此你已經成功搭建了fastDFS文件服務器,此時你可以在你得web上訪問圖片的url,發現可以進行web訪問了
over~but 下一篇繼續分享用SpringBoot上傳文件到文件系統