docker+nginx 搭建 FastDFS
獲取FastDFS文件系統的docker鏡像
docker search fastdfs
docker pull delron/fastdfs
使用docker鏡像構建tracker容器
docker run -d --network=host --name tracker -v /var/fdfs/tracker:/var/fdfs delron/fastdfs tracker
使用docker鏡像構建storage容器
docker run -d --network=host --name storage -e TRACKER_SERVER=你的ip:22122(端口默認爲22122) -v /var/fdfs/storage:/var/fdfs -e GROUP_NAME=group1 delron/fastdfs storage
到storage容器中更改HTTP訪問的端口(默認爲8888端口)
docker exec -it storage bash
vi /etc/fdfs/storage.conf
-------修改以下內容-------
http.server_port=8888(將8888改爲想要的端口)
配置nginx
cd /etc/nginx
vi nginx.config
在http的大括號中添加server:
server{
listen 8874;
server_name 39.98.34.83;
location /group1/M00{
alias /var/fdfs/storage/data;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html{
root html;
}
}
測試
首先進入storage容器
docker exec -it storage bash #進入容器
echo hello>a.txt #創建一個內容爲hello的a.txt
/usr/bin/fdfs_upload_file /etc/fdfs/client.conf a.txt #上傳a.txt
此時將該圖片已上傳至文件系統,並在執行該語句後返回圖片存儲的URL
在瀏覽器通過URL訪問文件
http://你的ip:8874/group1/M00/00/00/rBqcm11jqJmAYbY9AAAABncc3SA212.txt
一開始我把文件存儲到了/root/下,導致沒有權限去訪問文件,後來改了文件存儲地址,訪問成功