Almacenamiento propio (S3 autohospedado)
La secuencia BYOS (url entrada + output_url salida) solo necesita almacenamiento que hable el protocolo S3 (PUT/GET con URL prefirmadas). No tiene que ser AWS S3 o Cloudflare R2: cualquier servidor compatible con S3 que pueda ejecutar usted mismo funciona igual, con el mismo AWS/S3 SDK que ya conoce para generar URL firmadas.
API de markpdf no sabe ni le importa qué implementación de almacenamiento hay detrás de
url/output_url. Solo necesita un URL firmado para hacer GET (entrada) o PUT (salida). Todo lo que aparece en esta página sucede en su infraestructura, no dentro de API.Cuando te conviene
- Quiere mantener los documentos de sus usuarios en su propio VPS/centro de datos por motivos de cumplimiento o costos.
- Ya tienes un servidor con mucho disco/red y no quieres pagar la salida de un proveedor de nube.
- Estás en el desarrollo local y no quieres depender de las credenciales de un grupo real.
Opciones compatibles con S3 que puedes autohospedar
Todos exponen el mismo protocolo, por lo que el código que genera las URL firmadas (
getSignedUrl / generate_presigned_url) es intercambiable entre ellas y S3/R2. Solo cambia endpoint, credenciales y forcePathStyle/s3ForcePathStyle.
Genere URL firmadas en su propio servidor
Utilice el AWS SDK normal que apunta alendpoint de su servidor autohospedado. Funciona igual con MinIO, Garage, SeaweedFS o Ceph RGW.
output_url y Compresión de salida.
Notas prácticas
- Coloque TLS delante de su servidor de almacenamiento (proxy inverso con Let’s Encrypt, por ejemplo): las URL firmadas viajan a través de la red pública.
- Vence las URL firmadas en el tiempo mínimo razonable (minutos, no días); genera uno nuevo para cada conversión.
- Si migra desde S3/R2 a su propio almacenamiento más adelante, solo cambie
endpointy las credenciales; el resto del código (URL firma, llamando a API) no cambia.
