已經很久沒有使用fastdfs了,前一段時候公司需要搭建一套環境用來作為一個小型的檔案系統,使用了fastdfs進行存儲,這裡mark一下fastdfs的安裝(docker版本),網上的教程很多,有的很詳細,大家可以找找看。
1.使用docker搜尋fastdfs的鏡像檔案
docker search fastdfs
2.下載下傳鏡像檔案
docker pull morunchang/fastdfs
這裡選擇下載下傳morunchang/fastdfs鏡像,當然,你也可以選擇其他的鏡像檔案。如果你的虛拟機或者伺服器的網絡不是很好,可能會下載下傳很緩慢。如果實在下載下傳失敗,可以選擇換一個鏡像下載下傳的網站,常用的有很多
Docker 官方中國區:https://registry.docker-cn.com
網易:http://hub-mirror.c.163.com
中國科技大學:https://docker.mirrors.ustc.edu.cn
阿裡雲:https://pee6w651.mirror.aliyuncs.com
至于怎麼修改,這裡就不介紹了。
3.安裝tracker跟蹤器容器
docker run -d --name tracker --net=host morunchang/fastdfs sh tracker.sh
tracker容器使用host網絡,docker容器中的幾種網絡模式,這裡就不介紹了,後面有時間進行補充。
4.進入tracker容器
docker exec -it tracker /bin/bash
修改檔案 nginx.conf
vi /etc/nginx/conf/nginx.conf
這裡是nginx監聽tracker的端口号,即tracker的通路端口号,不過,需要直接通路tracker麼?
修改檔案client.conf
vi /etc/fdfs/client.conf
這裡的這個IP是你本地/伺服器的ip,端口号tracker的端口号,你需要自己指定,但是需要跟tracker.conf檔案中的端口号一緻。
這裡的端口号是tracker的通路端口号,和上面的8300不是一個。
修改檔案tracker.conf
vi /etc/fdfs/tracker.conf
這個端口号是tracker的端口号。
這個是tracker的監聽端口号,http通路的端口号。
使用Shift+zz(兩個z)進行儲存退出/或者使用 ":wq!"進行儲存退出。
5.退出容器
exit
6.安裝storage儲存器容器
現在/home下面建立檔案夾
cd /home
mkdir /docker
cd ./docker
mkdir /fastdfs
cd ./fastdfs
mkdir storage
docker run -d --name storage --net=host -e TRACKER_IP=192.168.124.61:8300 -v /home/docker/fastdfs/storage:/data/fast_data -e GROUP_NAME=group1 morunchang/fastdfs sh storage.sh
注意:這裡的端口号是tracker容器的ip和端口号,不是tracker的http通路的端口号。
進入容器
docker exec -it storage /bin/bash
修改檔案nginx.conf
vi /etc/nginx/conf/nginx.conf
這裡是storage容器的監聽端口号。
修改檔案client.conf
vi /etc/fdfs/client.conf
tracker的端口号和位址
tracker容器的通路端口号
修改檔案storage.conf
vi /etc/fdfs/storage.conf
storage容器的端口号
tracker的端口号
storage的通路端口号
儲存退出
退出容器
exit
7.重新開機tracker和storage
docker restart storage tracker
8.確定端口号8300,8310,8400,84104個端口号是不是都是通的,
檢視防火牆的開放端口号
sudo firewall-cmd --zone=public --list-all
開放端口号
sudo firewall-cmd --zone=public --add-port 8300/tcp --permanent
sudo firewall-cmd --zone=public --add-port 8310/tcp --permanent
sudo firewall-cmd --zone=public --add-port 8400/tcp --permanent
sudo firewall-cmd --zone=public --add-port 8410/tcp --permanent
firewall-cmd --reload
再次檢視端口号
sudo firewall-cmd --zone=public --list-all
上圖中就是已經開放的端口号。
9.放上一個檔案測試,你可以使用指令進行上傳檔案,也可以手動上傳檔案。
這裡我們找一張圖檔,改名為wKlBcFme1iGAJsF1AAL4cszpkW7853.jpg
前往storage挂載的檔案路徑:
cd /home/docker/fastdfs/storage/data/00/00/
sudo rz
然後就可以在浏覽器通過ip進行通路了。
http://192.168.124.61:8410/group1/M00/00/00/wKgByFmn1iGAUsF1AAL4cszpkW0032.jpg