Portainer
Instala y configura AI Gateway como un stack en Portainer.
Portainer implementa el docker/compose.yaml del repositorio como una pila.
- Pilas → Agregar pila y pega
docker/compose.yamlo use la opción Repositorio Git que apunta a este repositorio. - En Variables de entorno, establece:
MASTER_KEY—openssl rand -base64 48ENCRYPTION_KEYRING— p.ej.{"primary":"<openssl rand -hex 32>"}ACTIVE_ENCRYPTION_KEY_ID—primary
- Implemente el stack. Postgres, Redis y el trabajo único
migratese ejecutan dentro del stack; el gateway escucha en el puerto interno4000, y el dashboard opcional en3001.
La base de Compose de producción no publica puertos de host. Conecta su proxy inverso a la red del stack. Si el proxy se ejecuta directamente en el mismo host Docker, agrega asignaciones de solo loopback para el gateway (127.0.0.1:4000:4000) y el panel (127.0.0.1:3001:3001) en el editor del stack de Portainer.
Enrute el panel con su propio nombre de host: es una aplicación independiente en la raíz de su dominio, no una ruta en el del gateway. Necesita que GATEWAY_URL apunta al gateway en la red del stack; el gateway en sí no necesita dominio a menos que desee que se publique la API. Consulta Panel del operador → Servicio. Nunca publique Postgres, Redis o migrate.
El gateway llega a Postgres/Redis a través de la red del stack interna en texto sin formato, por lo que no hay protocolo de enlace TLS ni Solución de problemas.
Si en su lugar apunta a instancias externas, configura DATABASE_URL/REDIS_URL en el entorno de pila y prefiera un proveedor administrado con un certificado de CA pública; una base de datos autofirmada a través de un puerto público no funcionará en Bun.