安装脚本
#使用 docker部署fastdfs单机
echo "使用 docker部署fastdfs单机"
ip="192.168.1.58"
if [ -d "/usr/local/FastDfs/data" ]; then
echo "/usr/local/FastDfs/data 目录存在,请手动删除后重试,删除命令:rm -rf /usr/local/FastDfs/data"
exit
fi
#创建挂载目录页
mkdir -p /usr/local/FastDfs/data/tracker
mkdir -p /usr/local/FastDfs/data/storage
#下载镜像
docker pull docker.io/delron/fastdfs
#创建运行镜像
docker run -di --network=host --name tracker1 -v /usr/local/FastDfs/data/tracker:/var/fdfs docker.io/delron/fastdfs tracker
docker run -di --network=host --name storage1 -e TRACKER_SERVER=$ip:22122 -v /usr/local/FastDfs/data/storage:/var/fdfs -e GROUP_NAME=group1 docker.io/delron/fastdfs storage
#修改nginx配置文件
docker exec -d storage1 sed -i "s# root html;# root /fastdfs/store_path/data;#g" /tmp/nginx/nginx-1.12.2/conf/nginx.conf
docker exec -d storage1 sed -i "s# index index.html index.htm;# ngx_fastdfs_module;;#g" /tmp/nginx/nginx-1.12.2/conf/nginx.conf
#重启容器
#一定要先启动Tracker,在启动Storage
docker restart tracker1
sleep 20
docker restart storage1
sleep 20
#测试
docker exec -it storage1 /bin/bash -c ' echo "test ok" > a.txt'
add=`docker exec -it storage1 /bin/bash -c 'fdfs_upload_file /etc/fdfs/client.conf a.txt'`
URL="$ip:8888/$add"
UR=${URL%$'\r'}
echo 测试url: $UR
echo "正在测试,如果下一行显示 test ok 代表已成功安装"
curl $UR
其他命令
#docker stop storage1 && docker stop tracker1 && docker rm storage1 && docker rm tracker1 && rm -rf /usr/local/FastDfs/data