1.查找Docker Hub上的redis镜像
docker search fastdfs
2.拉取镜像
docker pull delron/fastdfs #拉取最新版本
3.查看镜像
docker images
4.安装tracker
# 安装tracker docker run -dti --network=host --name tracker -v /var/fdfs/tracker:/var/fdfs delron/fastdfs tracker # 如果自动运行tracker docker run -dti --restart unless-stopped --network=host --name tracker -v /var/fdfs/tracker:/var/fdfs delron/fastdfs tracker # 10.0.2.15 # ip a 就能查看虚拟机的ip(第二个就是虚拟机的ip) # 安装storage, IP地址用虚拟机的(不能用127.0.0.1) docker run -dti --network=host --name storage -e TRACKER_SERVER=10.0.2.15:22122 -v /var/fdfs/storage:/var/fdfs delron/fastdfs storage # 查看容器是否有开启 dcoker container ls -a
# 如果无法重新运行storage,可以删除/var/fdfs/storage/data目录下的fdfs_storaged.pid 文件,然后重新运行storage。 sudo rm -rf storage/
5.创建utils/fastdfs/logs日志文件夹,用于存放日志信息
# 创建utils/fastdfs/client.conf配置文件 # connect timeout in seconds # default value is 30s connect_timeout=30 # network timeout in seconds # default value is 30s network_timeout=60 #改成自己的fast.log base_path=/Home/pyvip/test99/logs/fast.log # tracker_server can ocur more than once, and tracker_server format is # 改成虚拟机的ip ; ip a 查看第二个 tracker_server=10.0.2.15:22122 #standard log level as syslog, case insensitive, value list: ### emerg for emergency ### alert ### crit for critical ### error ### warn for warning ### notice ### info ### debug log_level=info # if use connection pool # default value is false use_connection_pool = false # connections whose the idle time exceeds this time will be closed # unit: second # default value is 3600 connection_pool_max_idle_time = 3600 # if load FastDFS parameters from tracker server # default value is false load_fdfs_parameters_from_tracker=false # if use storage ID instead of IP address # same as tracker.conf # valid only when load_fdfs_parameters_from_tracker is false # default value is false use_storage_id = false # specify storage ids filename, can use relative or absolute path # same as tracker.conf # valid only when load_fdfs_parameters_from_tracker is false storage_ids_filename = storage_ids.conf #HTTP settings http.tracker_server_port=80
7. 创建utils/fastdfs/fdfs.py文件
from fdfs_client.client import Fdfs_client
# 指定fdfs客户端配置文件所在路径
FDFS_Client = Fdfs_client(r'/root/home/myblog/utils/fastdfs/client.conf')
if __name__ == '__main__':
try:
# upload_by_filename 上传文件名字
# upload_by_buffer 上传二进制
res = FDFS_Client.upload_by_filename(r'/root/home/myblog/media/tou.jpg')
except Exception as e:
print('fdfs测试异常:{}'.format(e))
else:
print(res)
8.安装相关包
# 安装相关包 # fdfs_client.zip文件从百度云中下载 pip install fdfs_client-py-master.zip pip install mutagen pip install requests
9.settings里面配置 地址
# FastDFS FDFS_URL = 'http://192.168.216.137:8888/' FDFS_CLIENT_CONF = os.path.join(BASE_DIR, 'utils/fastdfs/client.conf')