# Supabase Stack 快速参考 ## 🚀 启动服务 ```bash cd /vol1/1000/docker_server/traefik/supabase-stack # 启动所有服务(包含 MinIO 对象存储) docker compose -f docker-compose.yml -f docker-compose.s3.yml up -d # 查看状态 docker compose ps # 查看日志 docker compose logs -f storage ``` ## 📦 Storage API 访问 **端点**: `https://amiap.hzau.edu.cn/supa/storage/v1` **密钥**: ```bash SERVICE_ROLE_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoic2VydmljZV9yb2xlIiwiaXNzIjoic3VwYWJhc2UiLCJpYXQiOjE3NjM4MDI2NjksImV4cCI6MjA3OTE2MjY2OX0.gQWUaTkZ6mjjlv2TED0cODp2meqqWuCGKZR1ptIbovg ``` ## 💻 快速使用 ### Python ```python from storage_client import SupabaseStorageClient client = SupabaseStorageClient( 'https://amiap.hzau.edu.cn/supa', 'your-service-role-key' ) # 上传文件 client.upload_file('bucket', 'photo.jpg', 'uploads/photo.jpg') # 生成临时链接 url = client.create_signed_url('bucket', 'uploads/photo.jpg', 3600) ``` ### JavaScript ```javascript const client = new SupabaseStorageClient( 'https://amiap.hzau.edu.cn/supa', 'your-service-role-key' ); // 上传文件 await client.uploadFile('bucket', fileObject, 'uploads/photo.jpg'); // 生成临时链接 const url = await client.createSignedUrl('bucket', 'uploads/photo.jpg', 3600); ``` ## 📚 文档 - **OPERATIONS_GUIDE.md** - 完整运维指南(必读) - **storage_client.py** - Python 完整客户端代码 - **storage_client.js** - JavaScript 完整客户端代码 - **test_https_storage.py** - 测试脚本 ## 🧪 测试 ```bash python3 test_https_storage.py ``` ## ⚠️ 重要 - **MinIO 必须运行**:docker-compose.s3.yml 不能删除 - **数据位置**:/vol1/1000/s3/stub/ - **不要直接访问 MinIO**:统一通过 Storage API