logo
icon

Convoy

Pasarela de Webhooks de código abierto y nivel empresarial para entrega segura, escalable y fiable. PostgreSQL y Redis incluidos.

template cover
Implementado0 veces
Editoradrian539859
Creado2026-05-20
Etiquetas
ToolBackend

Convoy en Zeabur

Convoy es una pasarela de Webhooks de código abierto, rápida y segura. Gestiona Webhooks salientes (reintentos, limitación de tasa, firma, registro de entrega) y Webhooks entrantes (verificación HMAC, fuentes, replay). Esta plantilla despliega Convoy autohospedado con un clic en Zeabur, junto con los dos servicios que necesita: PostgreSQL para persistencia y Redis para cola.

Convoy es desarrollado por Frain Technologies y se distribuye bajo la Elastic License 2.0. Esta plantilla es solo una receta de despliegue — tú autohospedas tu instancia y mantienes pleno control sobre tus datos y claves API.


Qué obtienes

Tres servicios en un solo proyecto:

ServicioImagenFunción
convoygetconvoy/convoy:latestAPI, panel y worker de entrega (un único binario). Ejecuta las migraciones de DB al primer arranque.
postgresqlpostgres:18Almacena proyectos, endpoints, eventos, entregas e intentos
redisredis/redis-stack-server:latestCola de trabajos, contadores de limitación y caché

Convoy se conecta automáticamente a PostgreSQL y Redis a través de la red privada de Zeabur — sin configuración manual.

Desplegar

  1. Haz clic en Deploy en esta plantilla.
  2. Elige un prefijo de Dominio de Convoy (el valor por defecto sirve para pruebas — puedes asociar un dominio personalizado más tarde).
  3. Espera ~30 segundos a que los tres servicios arranquen. Convoy ejecuta las migraciones automáticamente en el primer arranque.
  4. Abre la URL que Zeabur muestra para el servicio convoy.

Primer inicio de sesión

En el primer arranque, Convoy crea un superusuario por defecto. Mira los logs en tiempo de ejecución del servicio convoy:

Superuser created successfully:
  Username: [email protected]
  Password: default

Inicia sesión con esas credenciales y, inmediatamente:

  1. Crea tu propia organización y usuario.
  2. Elimina la cuenta predeterminada [email protected].
  3. Rota las claves API que vayas a usar en producción.

Siguientes pasos

  • Enviar tu primer Webhook: en el panel crea un Project → añade un Endpoint → publica un Event. Convoy firmará, entregará y registrará el intento.
  • Recibir Webhooks: configura una Source bajo tu Project y Convoy te dará una URL tipo https://convoy.zeabur.app/ingest/<id> que puedes compartir con el tercero que envía Webhooks.
  • API: referencia completa en getconvoy.io/docs/api-reference.
  • Documentación autohospedaje: getconvoy.io/docs.

Variables configurables

Todos los ajustes de Convoy se pueden modificar en la pestaña Variables del servicio convoy. Las más útiles:

VariableFunción
CONVOY_HOSTURL pública de la instancia. Preconfigurada con el dominio de Zeabur. Actualízala si asocias un dominio personalizado.
CONVOY_SIGNUP_ENABLEDtrue permite el registro desde la UI; false bloquea el despliegue.
CONVOY_DB_MAX_OPEN_CONNTamaño del pool de conexiones PostgreSQL (por defecto 100). Bájalo en planes pequeños.
CONVOY_SMTP_*Credenciales SMTP para recuperación de contraseña / invitaciones. Opcional.

Referencia completa: convoy.env.example.

Mantenimiento

  • Copias de seguridad: Zeabur hace snapshots automáticos de PostgreSQL. Restaura desde la pestaña Backup del servicio postgresql.
  • Actualizaciones: las nuevas versiones de Convoy se publican en getconvoy/convoy:latest. Reinicia el servicio convoy para que descargue la última imagen; las migraciones se aplicarán automáticamente en el siguiente arranque.
  • Dimensionado: para tráfico ligero (~10 req/s), 1 vCPU / 1 GB por servicio es suficiente. Si aumenta la latencia de entrega, sube primero la CPU del servicio convoy.

Resolución de problemas

  • 502 en el primer despliegue: Convoy tarda ~15 s en ejecutar las migraciones antes de que el HTTP esté listo. Refresca unos segundos después.
  • Bucle de migraciones (retrying in 5s): PostgreSQL todavía no está listo. Convoy reintenta automáticamente hasta ~1 minuto.
  • No veo entregas fallidas: consulta la tabla event_deliveries en PostgreSQL, o entra en Convoy UI → Project → Event Deliveries.

Créditos