如何正确使用Clever Cloud的FS Bucket?应用存储桶交互咨询
如何与Clever Cloud FS-Bucket正确交互
1. 先确认环境变量
Clever Cloud会自动为绑定了FS-Bucket的应用注入核心环境变量,这是交互的基础:
FS_BUCKET_HOST:存储桶的访问端点FS_BUCKET_ACCESS_KEY:访问密钥IDFS_BUCKET_SECRET_KEY:访问密钥FS_BUCKET_NAME:存储桶名称
你可以在Clever Cloud控制台的应用「环境变量」页面查看,也可以在应用容器内执行命令查看:
printenv | grep FS_BUCKET
2. 使用Clever Cloud CLI操作
先确保已安装并登录Clever Cloud CLI,然后关联目标应用:
# 登录账号 clever login # 关联应用(替换<app-id>为你的应用ID,可在控制台应用详情页找到) clever link <app-id>
常用操作命令:
- 列出存储桶内文件:
clever fs-bucket ls
- 上传本地文件到存储桶:
clever fs-bucket upload ./本地文件路径 ./存储桶内目标路径
- 从存储桶下载文件:
clever fs-bucket download ./存储桶内文件路径 ./本地目标路径
- 删除存储桶内文件:
clever fs-bucket rm ./存储桶内文件路径
3. 通过S3兼容API编程交互
FS-Bucket兼容S3协议,可直接用各类支持S3的SDK进行开发,只需配置对应端点与密钥即可:
Python示例(boto3)
import os import boto3 # 初始化S3客户端 s3 = boto3.client( 's3', endpoint_url=f"https://{os.environ['FS_BUCKET_HOST']}", aws_access_key_id=os.environ['FS_BUCKET_ACCESS_KEY'], aws_secret_access_key=os.environ['FS_BUCKET_SECRET_KEY'], region_name="us-east-1" # 区域可任意填写,FS-Bucket不区分区域 ) # 上传文件 s3.upload_file("local_demo.txt", os.environ['FS_BUCKET_NAME'], "bucket_demo.txt") # 列出存储桶内所有文件 response = s3.list_objects_v2(Bucket=os.environ['FS_BUCKET_NAME']) for obj in response.get('Contents', []): print(f"文件路径:{obj['Key']},大小:{obj['Size']}字节") # 下载文件 s3.download_file(os.environ['FS_BUCKET_NAME'], "bucket_demo.txt", "downloaded_demo.txt")
JavaScript示例(aws-sdk)
const AWS = require('aws-sdk'); const fs = require('fs'); // 初始化S3客户端 const s3 = new AWS.S3({ endpoint: `https://${process.env.FS_BUCKET_HOST}`, accessKeyId: process.env.FS_BUCKET_ACCESS_KEY, secretAccessKey: process.env.FS_BUCKET_SECRET_KEY, region: 'us-east-1' }); // 上传文件 const uploadParams = { Bucket: process.env.FS_BUCKET_NAME, Key: 'bucket_demo.txt', Body: fs.createReadStream('local_demo.txt') }; s3.upload(uploadParams, (err, data) => { if (err) console.error('上传失败:', err); else console.log('上传成功,文件地址:', data.Location); });
4. 关键注意事项
- 存储桶内的文件路径无需包含存储桶名称,直接使用相对路径即可
- 若应用未注入FS-Bucket相关环境变量,检查是否已为应用添加FS-Bucket附加组件
- 大文件上传建议依赖SDK的自动分块上传功能,避免超时
- 权限方面,Clever Cloud在添加FS-Bucket附加组件时会自动配置应用的访问权限,无需额外手动设置
内容的提问来源于stack exchange,提问作者rb_engineer
相关产品推荐
相关产品推荐

