Implementar InsForge en Google Cloud Compute Engine
Esta guía te llevará paso a paso por la implementación de InsForge en Google Cloud Compute Engine usando Docker Compose.Esta guía de nube la mantiene la comunidad y puede quedar por detrás de la última versión de InsForge. La configuración canónica y siempre actualizada es el directorio
deploy/docker-compose/ en el repositorio de InsForge.📋 Requisitos previos
- Cuenta de Google Cloud con facturación habilitada
- Conocimientos básicos de SSH y operaciones de línea de comandos
- Nombre de dominio (opcional, para configuración de dominio personalizado)
🚀 Pasos de implementación
1. Crear y configurar la instancia de Compute Engine
1.1 Crear un proyecto de Google Cloud
- Inicia sesión en Google Cloud Console en console.cloud.google.com
- Haz clic en “Select a project” en la barra de navegación superior
- Haz clic en “New Project”
- Ingresa el nombre del proyecto (p. ej.,
insforge-deployment) - Haz clic en “Create”
- Espera a que se complete la creación del proyecto
1.2 Habilitar las APIs necesarias
- En tu proyecto, navega a APIs & Services → Library
- Busca y habilita estas APIs:
- Compute Engine API
- Cloud Storage API (si la usas para copias de seguridad)
- Cloud SQL Admin API (si usas Cloud SQL)
1.3 Crear la instancia de Compute Engine
- Navega a Compute Engine → VM instances
- Haz clic en “Create Instance”
- Configura tu instancia:
- Name:
insforge-server(o el nombre que prefieras) - Region: Elige una región cercana a tus usuarios
- Zone: Selecciona una zona de disponibilidad (p. ej., us-central1-a)
- Machine configuration:
- Series: N2 o E2
- Machine type:
e2-mediumo superior (mínimo 2 vCPU, 4 GB de RAM)- Para producción: se recomienda
e2-standard-2(2 vCPU, 8 GB de RAM) - Para pruebas: mínimo
e2-small(2 vCPU, 2 GB de RAM)
- Para producción: se recomienda
- Boot disk:
- Operating system: Ubuntu LTS (Ubuntu 22.04 LTS o más reciente)
- Boot disk type: Disco persistente equilibrado
- Size: 30 GB (se recomienda un mínimo de 20 GB)
- Firewall:
- Permitir tráfico HTTP: Marcado
- Permitir tráfico HTTPS: Marcado
- Name:
1.4 Configurar las reglas de firewall
- Navega a VPC network → Firewall
- Crea o modifica reglas de firewall para permitir los siguientes puertos:
| Name | Direction | Targets | Protocols/ports | Source filters |
|---|---|---|---|---|
| insforge-ssh | Ingress | insforge-server | tcp:22 | Tu dirección IP |
| insforge-http | Ingress | insforge-server | tcp:80 | 0.0.0.0/0 |
| insforge-https | Ingress | insforge-server | tcp:443 | 0.0.0.0/0 |
| insforge-app | Ingress | insforge-server | tcp:7130 | 0.0.0.0/0 |
| insforge-deno | Ingress | insforge-server | tcp:7133 | 0.0.0.0/0 |
| insforge-postgrest | Ingress | insforge-server | tcp:5430 | 0.0.0.0/0 |
| insforge-postgres | Ingress | insforge-server | tcp:5432 | 0.0.0.0/0 (solo si se necesita acceso externo) |
⚠️ Nota de seguridad: Para producción, restringe PostgreSQL (5432) a direcciones IP específicas o elimina por completo el acceso externo. Considera usar un proxy inverso (nginx) y exponer solo los puertos 80/443.
2. Conectarte a tu instancia de Compute Engine
- En Google Cloud Console, ve a Compute Engine → VM instances
- Busca tu instancia y haz clic en el botón SSH en la misma fila, o:
3. Instalar dependencias
3.1 Actualizar los paquetes del sistema
3.2 Instalar Docker
3.3 Agregar tu usuario al grupo de Docker
Después de instalar Docker, necesitas agregar tu usuario al grupodocker para poder ejecutar comandos de Docker sin sudo:
💡 Nota: Si docker ps no funciona de inmediato, cierra sesión y vuelve a iniciar sesión por SSH, luego inténtalo de nuevo.
⚠️ Nota de seguridad: Agregar un usuario al grupo docker le otorga privilegios equivalentes a root en el sistema. Esto es aceptable en entornos de un solo usuario como tu instancia de Compute Engine, pero ten cuidado en sistemas compartidos.
3.4 Instalar Git
4. Implementar InsForge
4.1 Clonar el repositorio
4.2 Crear la configuración del entorno
Crea tu archivo.env con los valores de producción:
deploy/docker-compose/.env.example. Cópiala y edita los valores:
deploy/docker-compose/.env.example para ver la lista completa de variables admitidas.
Genera secretos seguros:
💡 Importante: Guarda estos secretos de forma segura. Los necesitarás si alguna vez migras o restauras tu instancia.
4.3 Iniciar los servicios de InsForge
Ctrl+C para salir de la vista de logs.
4.4 Verificar los servicios
5. Acceder a tu instancia de InsForge
5.1 Probar la API del backend
5.2 Acceder al panel de control
Abre tu navegador y navega a:6. Configurar el dominio (opcional pero recomendado)
6.1 Reservar una IP externa estática
- En Google Cloud Console, ve a VPC network → External IP addresses
- Haz clic en Reserve Static Address
- Name:
insforge-ip - Type: Regional o Global (Regional para instancias de VM)
- Region: La misma que tu instancia de VM
- Haz clic en Reserve
6.2 Actualizar los registros DNS
Apunta los registros DNS de tu dominio a la IP estática reservada:6.3 Instalar el proxy inverso Nginx
6.4 Instalar el certificado SSL (recomendado)
.env con las URLs de HTTPS:
🔧 Administración y mantenimiento
Ver logs
Detener servicios
Reiniciar servicios
Actualizar InsForge
Copia de seguridad de la base de datos
Monitorear recursos
🐛 Solución de problemas
Los servicios no inician
No se puede conectar a la base de datos
El puerto ya está en uso
Falta de memoria
Considera actualizar a un tipo de instancia más grande:Problemas con el certificado SSL
📊 Optimización del rendimiento
Para cargas de trabajo de producción
- Actualizar el tipo de instancia: Usa
e2-standard-2oe2-standard-4 - Usar Cloud SQL: Migra de PostgreSQL en contenedores a Google Cloud SQL para mayor fiabilidad
- Habilitar Cloud Monitoring: Monitorea las métricas y configura alertas
- Configurar copias de seguridad: Configura copias de seguridad diarias automatizadas
- Usar Cloud Storage: Configura Google Cloud Storage para las subidas de archivos en lugar del almacenamiento local
Optimización de la base de datos
🔒 Prácticas recomendadas de seguridad
- Cambiar las contraseñas predeterminadas: Actualiza las contraseñas de administrador y de la base de datos
- Habilitar el firewall: Usa las reglas de Google Cloud Firewall de forma efectiva
- Actualizaciones regulares: Mantén el sistema y las imágenes de Docker actualizados
- SSL/TLS: Usa siempre HTTPS en producción
- Copias de seguridad periódicas: Automatiza las copias de seguridad de la base de datos
- Monitorear logs: Configura el monitoreo de logs y alertas
- Limitar el acceso SSH: Restringe el SSH a direcciones IP específicas
- Usar cuentas de servicio: En lugar de claves de API cuando sea posible
🆘 Soporte y recursos
- Documentación: https://docs.insforge.dev
- Issues de GitHub: https://github.com/insforge/insforge/issues
- Comunidad de Discord: https://discord.com/invite/MPxwj5xVvW
📝 Estimación de costos
Costos mensuales aproximados de Google Cloud:| Component | Type | Monthly Cost |
|---|---|---|
| Compute Engine | e2-medium (2 vCPU, 4 GB RAM) | ~$29 |
| Persistent Disk (30 GB) | Standard | ~$3 |
| Network Egress | First 1GB free | Variable |
| Total | ~$32/month |
💡 Optimización de costos: Usa descuentos por uso sostenido para instancias que se ejecutan 24/7 y ahorra hasta un 30%. Considera instancias interrumpibles (preemptible) para entornos de desarrollo/pruebas.
¡Felicidades! 🎉 Tu instancia de InsForge ahora se está ejecutando en Google Cloud Compute Engine. Puedes empezar a construir aplicaciones conectando agentes de IA a tu plataforma backend. Para otras estrategias de implementación en producción, consulta nuestras guías de implementación.