1. Docker安装运行FastDFS
0.查找镜像
docker search fastdfs
docker image pull delron/elasticsearch-ik:2.4.6-1.0
1.获取FastDFS镜像
#从仓库拉取镜像 $ sudo docker image pull delron/fastdfs
#解压教学资料中本地镜像 $ sudo docker load -i 文件路径/fastdfs_docker.tar
2.开启tracker容器
我们将 tracker 运行目录映射到宿主机的/var/fdfs/tracker目录中。
sudo docker run -dit --name tracker --network=host -v /var/fdfs/tracker:/var/fdfs delron/fastdfs tracker
tracker运行指令
3.开启storage容器192.168.217.128
TRACKER_SERVER=Tracker的ip地址:22122(Tracker的ip地址不要使用127.0.0.1) 我们将 storage 运行目录映射到宿主机的/var/fdfs/storage目录中。
sudo docker run -dti --name storage --network=host -e TRACKER_SERVER=192.168.217.128:22122 -v /var/fdfs/storage:/var/fdfs delron/fastdfs storage
4.查看宿主机映射路径
注意:如果无法重启storage容器,可以删除/var/fdfs/storage/data目录下的fdfs_storaged.pid文件,然后重新运行storage。
2.FastDFS客户端上传文件
Python版本的FastDFS客户端使用参考文档
1、安装fdfs(拷贝到libs)
pip install fastdfs-client-py3
pip install mutagen==1.40
pip install requests(已有忽略)
2.准备FastDFS客户端扩展的配置文件(fastdfs/clinet.conf)
connect_timeout=30
network_timeout=120
base_path=/home/python/Desktop/
tracker_server=192.168.217.128:22122
log_level=info
use_connection_pool = false
connection_pool_max_idle_time = 3600
load_fdfs_parameters_from_tracker=false
use_storage_id = false
storage_ids_filename = storage_ids.conf
http.tracker_server_port=80
3.python manage.py shell
from fdfs_client.client import Fdfs_client,get_tracker_conf
client_conf_obj = get_tracker_conf('utils/fastdfs/client.conf')
client = Fdfs_client(client_conf_obj)
#通过创建的客户端对象执行上传文件的方法
client.upload_by_filename('D:/python/top1.jpg')
4.访问测试
192.168.217.128:8888/group1/M00/00/00/wKjZgGF2e6yATpzNAAAm7JDlj-Y383.jpg
|