MinIO - macOS上配置、Python调用

文章目录

    • [安装配置 MinIO 服务](#安装配置 MinIO 服务)
    • [Python 调用](#Python 调用)

安装配置 MinIO 服务

1、使用 brew 安装 MinIO

如果您之前使用 brew install minio 安装了MinIO服务器,那么我们建议您改为从 minio/stable/minio 重新安装。

python 复制代码
brew install minio/stable/minio

2、创建文件夹作为 MinIO 工作目录

shell 复制代码
cd ~
mkdir minio/data

启动程序 默认写入 ~/data 中,如果没有 这个文件夹,需要手动创建一个,否则报错。


可以将地址写入配置

shell 复制代码
export MINIO_CONFIG_ENV_FILE=/etc/default/minio
minio server --console-address :9090

3、运行服务

shell 复制代码
minio server ~/minio/data 

服务起来后,会显示 API、WebUI、CLI 等地址


打开管理端(WebUI)页面
http://192.168.2.203:9000 RootUser: minioadmin RootPass: minioadmin


有漂亮的监控页面


Python 调用

SDK 简介

MinIO 支持以下语言的 SDK :
GoPythonJava.NETJavaScriptHaskellC++


对于 Python 有以下资料


调用示例

这里简单上传文件到服务的指定 , 不存在则创建

python 复制代码
# 从minio库中导入Minio客户端类
from minio import Minio
# 实例化
client = Minio(
	# endpoint指定的是你Minio的远程IP及端口
	endpoint = "192.168.1.153:9000",
	# accesskey指定的是你的Minio服务器访问key
	# 默认值为minioadmin
	access_key= "minioadmin",
	# secret_key指定的是你登录时需要用的key,类似密码
	# 默认值也是minioadmin
	secret_key= "minioadmin",
	# secure指定是否以安全模式创建Minio连接
	# 建议为False
	secure= False
)

print('-- client : ', client) 
# The file to upload, change this path if needed
source_file = "/Users/xxx/Downloads/d1.txt"

# The destination bucket and filename on the MinIO server
bucket_name = "python-test-bucket"
destination_file = "my-test-file.txt"

# Make the bucket if it doesn't exist.
found = client.bucket_exists(bucket_name)
if not found:
    client.make_bucket(bucket_name)
    print("Created bucket", bucket_name)
else:
    print("Bucket", bucket_name, "already exists")

# Upload the file, renaming it in the process
client.fput_object(
    bucket_name, destination_file, source_file,
)
print(
    source_file, "successfully uploaded as object",
    destination_file, "to bucket", bucket_name,
)

可以在管理端看到结果


在 MinIO 的工作目录也可以看到这个文件


在元数据的基础上,头部添加了元数据信息

shell 复制代码
XL2 ?x?&?????!?^??L-???J??Type?V2Obj??ID??DDir?<U????L????hfC	?EcAlgo?EcM?EcN?EcBSize??EcIndex?EcDist??CSumAlgo?PartNums??PartETags??PartSizes????PartASizes????Size???MTime???!?^??MetaSys??x-minio-internal-inline-data?true?MetaUsr??content-type?application/oct??§??JCȐ?>???.??,?$??

2024-09-14(六)

相关推荐
coder_Eight33 分钟前
从 3 天到 8 分钟:我如何把垂直科普内容做成了自动化流水线
python·ai编程
水獭比特34 分钟前
MCP SDK v2 迁移别只改依赖:先把 FastMCP 3/4 拆成两条测试线
人工智能·python
l12586539 分钟前
# RAG多轮对话检索设计:Query重写如何让“那它呢“变成完整问题
前端·数据库·人工智能·python·算法·fastapi·milvus
dorky-org1 小时前
03-Python基础
python·具身智能
如此这般英俊1 小时前
手搓Claude Code-第十三章 background_tasks
前端·人工智能·chrome·python·算法·语言模型·自然语言处理
Είναι η κοπέλα1 小时前
PyTorch 模型导出与部署实战:ONNX + onnxruntime(可直接落地)
人工智能·pytorch·python
NutShell Wang1 小时前
Mojo 1.0 实战:把 Python 热路径原地加速到 C++ 级(四层渐进式迁移)
python·mojo·vibe coding
运维行者_2 小时前
预测性云监控怎么做?AI驱动的7大核心能力与落地路径
服务器·开发语言·网络·数据库·人工智能·python·php
呆萌很2 小时前
PyTorch CosineAnnealingLR的T_max和eta_min参数设置
人工智能·pytorch·python
aichitang20242 小时前
快乐泛函每一天!内积空间
c++·python·数学·算法·机器学习·ai·泛函分析