docker安装minio
docker run -d -p 9000:9000 -p 9001:9001 --name minio \
-e "MINIO_ROOT_USER=admin" \
-e "MINIO_ROOT_PASSWORD=12345678" \
-v /mnt/minio/data:/data \
-v /mnt/minio/config:/root/.minio \
minio/minio server /data --console-address ":9001"
注意事项
- 密码必须大于等于
8
位数
使用Python操作Minio
安装minio
的Python
库
pip install minio
创建客户端
import minio
import os
client = minio.Minio(
endpoint='ip:9000',
access_key='minioadmin',
secret_key='minioadmin',
secure=False
)
判断存储桶是否存在
if client.bucket_exists("computerversion"):
通过client.bucket_exists()
函数直接进行存储桶的查询,添加参数bucket_name
,为了防止因存储桶不存在而无法上传的情况,先使用条件语句判断。
存储桶存在,就用with open打开文件
with open("xxx.mp4", "rb") as file_data:
bytes_length = os.path.getsize("xxx.mp4")
client.put_object("computerversion", "xxx.mp4", file_data, bytes_length)
url = client.presigned_get_object("computerversion", "xxx.mp4")
print(url)
完整代码
import minio
import os
client = minio.Minio(
endpoint='ip:9000',
access_key='minioadmin',
secret_key='minioadmin',
secure=False
)
if client.bucket_exists("computerversion"):
with open("xxx.mp4", "rb") as file_data:
bytes_length = os.path.getsize("xxx.mp4")
client.put_object("computerversion", "xxx.mp4", file_data, bytes_length)
url = client.presigned_get_object("computerversion", "xxx.mp4")
print(url)
- 在浏览器中打开
URL
,文件就会被下载 - 再次打开
Minio
控制台并刷新,可以看到刚刚上传的文件