クラウドストレージ
署名付きURL付きのS3互換オブジェクトストレージ。
エントリ種別
| 種別 | 説明 |
|---|---|
config.aws |
AWS認証情報とリージョン設定 |
cloudstorage.s3 |
S3バケット接続 |
AWS設定
- name: aws_config
kind: config.aws
region: "us-east-1"
access_key_id_env: "AWS_ACCESS_KEY_ID"
secret_access_key_env: "AWS_SECRET_ACCESS_KEY"
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
region |
string | 条件付き | AWSリージョン。region_env が設定されていない限り必須 |
region_env |
string | 条件付き | リージョンを保持する環境変数名 |
access_key_id_env |
string | いいえ | アクセスキー用環境変数名 |
secret_access_key_env |
string | いいえ | シークレットキー用環境変数名 |
認証情報は指定された環境変数からロードされます。静的な認証情報を適用するには access_key_id_env と secret_access_key_env の両方が空でない値に解決される必要があります。そうでない場合は、AWS SDK のデフォルト認証チェーン(IAM ロール、インスタンスプロファイルなど)が使用されます。
リクエストは、解決された認証情報を使用して AWS SDK によって AWS Signature Version 4 で署名されます。署名の設定は不要です。
_env バリアント(region_env、および後述の bucket_env/endpoint_env)を使用してください。変数名は起動時に環境レジストリから解決されます。
S3ストレージ
- name: files
kind: cloudstorage.s3
bucket: "my-bucket"
config: app.infra:aws_config
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
bucket |
string | 条件付き | S3バケット名。bucket_env が設定されていない限り必須 |
bucket_env |
string | 条件付き | バケット名を保持する環境変数名 |
config |
reference | はい | AWS設定エントリ参照 |
endpoint |
string | いいえ | S3互換サービス用カスタムエンドポイント |
endpoint_env |
string | いいえ | カスタムエンドポイントを保持する環境変数名 |
S3互換サービス
MinIOまたは他のS3互換サービスの場合、カスタムエンドポイントを設定:
- name: local_storage
kind: cloudstorage.s3
bucket: "local-bucket"
config: app.infra:aws_config
endpoint: "http://localhost:9000"
エンドポイントが提供されると、パススタイルアクセスが自動的に有効になります。
Lua API
操作(list、upload、download、delete、署名付きURL)についてはクラウドストレージモジュールを参照してください。
関連項目
- クラウドストレージモジュール - Lua APIリファレンス
- ファイルシステム - ローカルファイルシステムエントリ
- キュー - SQSハンドラは同じ
config.awsエントリを共有します