UStackUStack
imgproxy icon

imgproxy

imgproxy es un servidor de procesamiento de imágenes autohospedado para redimensionar, convertir y optimizar imágenes remotas al vuelo mediante transformaciones por URL.

imgproxy

¿Qué es imgproxy?

imgproxy es un servidor independiente para el procesamiento de imágenes al vuelo. Redimensiona, recorta, gira, añade marcas de agua, aplica filtros y convierte imágenes remotas mediante parámetros de procesamiento en la URL de la imagen, por lo que las aplicaciones no necesitan pre-generar todas las variantes de imagen con antelación.

Está diseñado para ejecutarse en tu propia infraestructura y trabajar con tu propio almacenamiento de imágenes. El producto está disponible como un proyecto central de código abierto, con una versión Pro que añade funciones avanzadas como opciones de procesamiento adicionales, generación de vistas previas para video, PDF y documentos de Photoshop, y otras mejoras.

Funciones clave

  • Redimensionado y conversión de imágenes al vuelo — Sirve exactamente la variante de imagen necesaria en el momento de la solicitud, en lugar de almacenar muchos archivos preconstruidos.
  • Opciones de procesamiento basadas en URL — Especifica transformaciones y el formato de salida directamente en la URL de la imagen, lo que encaja con flujos de entrega de imágenes impulsados por CDN y aplicaciones.
  • Despliegue autohospedado — Ejecuta imgproxy en tu propio servidor o infraestructura en lugar de enviar imágenes a un servicio SaaS de terceros.
  • Controles de seguridad para solicitudes de imágenes — Incluye protección contra image bombs, firma de URLs para evitar transformaciones no autorizadas y autorización mediante cabecera HTTP para ayudar a proteger rutas de entrega en caché.
  • Amplio soporte de procesamiento de imágenes — Incluye redimensionado, recorte, rotación, marcas de agua, filtros, eliminación de perfiles de color, eliminación de metadatos, cuantización de PNG y recorte inteligente en la edición de código abierto.
  • Separación de funciones entre open-core y Pro — La versión de código abierto está en GitHub, mientras que Pro añade compresión avanzada, marcas de agua dinámicas, vistas previas de video, detección de objetos, recorte inteligente avanzado y otras funciones premium.

Cómo usar imgproxy

Una configuración típica comienza instalando imgproxy como una imagen de Docker o un paquete de Linux en tu propia máquina o entorno de hosting. Luego subes imágenes o lo apuntas a las imágenes de tu almacenamiento, configuras el servidor según sea necesario y solicitas imágenes procesadas añadiendo parámetros de transformación a la URL.

En la práctica, la aplicación o el frontend genera URLs de imagen con el tamaño, el formato y los ajustes de transformación necesarios, y imgproxy devuelve el resultado procesado bajo demanda.

Casos de uso

  • Entrega de imágenes responsive para aplicaciones web — Genera distintos tamaños y formatos de imagen en el momento de la solicitud para diseños que necesitan varias variantes.
  • Procesamiento de imágenes en infraestructura privada — Mantén el tratamiento de imágenes dentro de tu propio entorno cuando no quieras enviar recursos a un servicio externo.
  • Control de costes para cargas de trabajo de imágenes de gran volumen — Sustituye un SaaS gestionado de imágenes por un servidor autohospedado para mantener bajo tu control las decisiones de procesamiento y escalado.
  • Procesamiento de imágenes con requisitos de seguridad — Usa URLs firmadas y autorización de solicitudes para reducir el abuso y las solicitudes de transformación no autorizadas.
  • Flujos avanzados de medios — Usa las funciones Pro para tareas como vistas previas de video, vistas previas de documentos PDF o Photoshop, compresión avanzada y marcas de agua dinámicas.

FAQ

¿imgproxy es autohospedado?
Sí. La fuente describe imgproxy como un servidor de procesamiento de imágenes autohospedado que se ejecuta en tu propia infraestructura.

¿Necesito pre-generar variantes de imagen?
No. imgproxy está pensado para procesar y convertir imágenes al vuelo según los parámetros de la URL.

¿Existe una versión de código abierto?
Sí. El producto es open core: la versión de código abierto está publicada en GitHub y también existe una versión Pro de código cerrado.

¿Qué formatos y transformaciones son compatibles?
La fuente menciona formatos comunes como JPEG, PNG, GIF, WebP, AVIF y JPEG XL, junto con redimensionado, recorte, rotación, marcas de agua, filtros y varias funciones de optimización.

¿Cómo se despliega imgproxy?
Se distribuye como imágenes de Docker y paquetes de Linux, y está diseñado para ejecutarse en prácticamente cualquier servicio de hosting o en una máquina local.

Alternativas

  • Otros procesadores de imágenes autohospedados — Herramientas similares que se centran en ejecutar transformaciones de imágenes dentro de tu propia infraestructura, a menudo con distintos modelos de configuración o conjuntos de funciones.
  • Servicios gestionados de transformación de imágenes — Plataformas SaaS que se encargan de redimensionar y convertir por ti, normalmente con menos control operativo que un servidor autohospedado.
  • Funciones de redimensionamiento de imágenes de CDN — Procesamiento de imágenes en el edge ofrecido por algunas redes de distribución, que puede simplificar el despliegue pero quizá no exponga la misma profundidad de procesamiento ni el mismo control del despliegue.
  • Pipelines personalizados de procesamiento de imágenes en la aplicación — Librerías o servicios integrados directamente en la pila de una app, que pueden encajar mejor en cargas de trabajo pequeñas pero requieren más mantenimiento del lado de la aplicación.
imgproxy | UStack