Addons gestionadosAlmacenamiento de objetos (S3)

Managed Object Storage

Managed Object Storage en Lizard (lizard.build) es almacenamiento compatible con S3 para cargas, recursos y copias de seguridad. lizard add s3 lo crea con un bucket privado llamado default y cinco variables, de S3_ENDPOINT a S3_REGION, que cualquier AWS SDK puede usar con direccionamiento de estilo ruta (path-style). Cada cuenta puede almacenar hasta 16 GiB, y pagas por los bytes que almacenas. Para servir archivos sin autenticación, haz público el bucket desde el navegador S3 del panel. Para ver un resumen y los precios, consulta la página de Managed Object Storage.

Aprovisionar

lizard add s3

El primer addon de S3 se llama s3, así que ${{s3.S3_ENDPOINT}} y similares funcionan de inmediato.

Variables de entorno

VariableDescripción
S3_ENDPOINTURL del endpoint compatible con S3
S3_DEFAULT_BUCKETEl nombre del bucket creado automáticamente (default)
S3_ACCESS_KEY_IDClave de acceso
S3_SECRET_ACCESS_KEYClave secreta
S3_REGIONRegión

Conectar un servicio

lizard secrets set \
  S3_ENDPOINT='${{s3.S3_ENDPOINT}}' \
  S3_DEFAULT_BUCKET='${{s3.S3_DEFAULT_BUCKET}}' \
  S3_ACCESS_KEY_ID='${{s3.S3_ACCESS_KEY_ID}}' \
  S3_SECRET_ACCESS_KEY='${{s3.S3_SECRET_ACCESS_KEY}}' \
  S3_REGION='${{s3.S3_REGION}}' \
  --service api
lizard redeploy --service api

Usar un AWS SDK

El endpoint es compatible con S3. Configura el direccionamiento path-style:

import { S3Client } from "@aws-sdk/client-s3";
 
const s3 = new S3Client({
  endpoint: process.env.S3_ENDPOINT,
  region: process.env.S3_REGION,
  forcePathStyle: true, // required
  credentials: {
    accessKeyId: process.env.S3_ACCESS_KEY_ID!,
    secretAccessKey: process.env.S3_SECRET_ACCESS_KEY!,
  },
});

Archivos públicos

Los buckets son privados de forma predeterminada. Los objetos de un bucket que hagas público se sirven sin autenticación de dos maneras:

  1. URL del gateway (se muestra en el panel):
    https://s3-<region>.onlizard.com/<addonId>/<bucket>/<key>
    <region> es el valor de S3_REGION (eu-west-1 o us-east-1).
  2. Proxy de la plataforma (el host del panel, con encabezados de caché inmutables de larga duración):
    <dashboard-host>/api/s3/<addonId>/public/<bucket>/<key>

Una vez que hagas público el bucket default, sus objetos se sirven en:

<dashboard-host>/api/s3/<addonId>/public/default/<key>

Explorar objetos

Abre el navegador S3 en el panel (lizard open) para cargar y eliminar objetos, crear carpetas y hacer buckets públicos o privados. Desde la CLI, lizard s3 upload <file> carga un archivo y lizard s3 list lista los objetos; consulta lizard s3.

Los cambios de ACL del bucket (hacer un bucket público/privado) todavía no están en la CLI; gestiónalos desde el panel.

Límite de almacenamiento

Cada cuenta puede almacenar hasta 16 GiB de objetos entre sus addons de Managed Object Storage. Pagas por los bytes almacenados, no por un tamaño reservado; lizard scale --storage no cambia este límite.

Ver también

Actualizado