Coolify Docker Compose: Alternativa Open-Source a Heroku 2025

Coolify Docker Compose - Plataforma PaaS autohospedada alternativa a Heroku

¿Cansado de depender de Heroku, Vercel o Netlify para desplegar tus aplicaciones? Coolify Docker Compose es la solución open-source definitiva que te permite tener tu propio PaaS (Platform as a Service) autohospedado, desplegando aplicaciones, bases de datos y más de 280 servicios con un solo clic en tu propia infraestructura.

En esta guía completa aprenderás a instalar y configurar esta plataforma revolucionaria que está transformando el mundo del self-hosting en 2025, con más de 48.000 estrellas en GitHub y una comunidad activa de miles de desarrolladores.

¿Qué es Coolify Docker Compose?

Coolify es una plataforma open-source que funciona como alternativa autohospedada a servicios comerciales como Heroku, Vercel, Netlify y Railway. Esta solución te permite desplegar sitios web estáticos, APIs, backends, bases de datos y servicios complejos directamente en tu servidor mediante contenedores Docker.

La arquitectura de esta plataforma se basa en Docker y Docker Compose, lo que garantiza portabilidad, aislamiento de aplicaciones y despliegues reproducibles. A diferencia de las alternativas comerciales, con esta herramienta mantienes control total sobre tus datos, sin vendor lock-in ni costes mensuales recurrentes.

Ventajas de usar Coolify Docker Compose

Implementar tu propio PaaS con esta solución ofrece beneficios significativos frente a servicios cloud comerciales:

  • Control total de datos: Toda tu información permanece en tu infraestructura, sin terceros accediendo a código o datos sensibles
  • Ahorro económico: Eliminas suscripciones mensuales que pueden alcanzar cientos de dólares en servicios como Heroku o Vercel
  • 280+ servicios one-click: WordPress, PostgreSQL, Redis, MongoDB, Plausible Analytics y muchos más preconfigurados
  • Git integrado: Despliegues automáticos desde GitHub, GitLab, Bitbucket o Gitea
  • SSL automático: Certificados Let’s Encrypt configurados y renovados automáticamente
  • Pull Request deployments: Previsualiza cambios en entornos aislados antes de fusionar
  • API robusta: Automatiza despliegues mediante scripts o CI/CD pipelines
  • Multi-servidor: Gestiona múltiples servidores desde una única interfaz

Requisitos previos para instalar Coolify Docker Compose

Antes de comenzar la instalación, verifica que tu sistema cumple estos requisitos mínimos:

Hardware recomendado

  • CPU: 2 cores mínimo (4 cores recomendado para producción)
  • RAM: 2 GB mínimo absoluto, 4 GB recomendado para múltiples aplicaciones
  • Almacenamiento: 20 GB libres mínimo (SSD preferible)
  • Red: IPv4 pública o configuración de túnel inverso

Software necesario

  • Sistema operativo: Ubuntu 22.04/24.04, Debian 11/12, o cualquier Linux compatible con Docker
  • Docker: El instalador lo configurará automáticamente si no está presente
  • Acceso root: Permisos sudo para instalación y configuración
  • Puertos abiertos: 22 (SSH), 80 (HTTP), 443 (HTTPS), 8000 (Coolify UI), 6001 (WebSockets)

Instalación rápida de Coolify Docker Compose

El método oficial de instalación utiliza un script automatizado que configura Docker, Docker Compose y todos los servicios necesarios en un solo paso:

curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash

Este comando descarga y ejecuta el instalador oficial, que realizará automáticamente:

  1. Verificación de requisitos del sistema
  2. Instalación de Docker y Docker Compose si no están presentes
  3. Descarga de imágenes Docker necesarias
  4. Configuración de red y volúmenes persistentes
  5. Inicialización de la base de datos PostgreSQL
  6. Arranque de todos los servicios

La instalación completa tarda entre 3 y 10 minutos dependiendo de tu conexión a internet y hardware. Una vez finalizado, accede a la interfaz web en http://tu-ip:8000.

Configuración inicial de Coolify Docker Compose

Al acceder por primera vez a la interfaz web, el asistente te guiará por estos pasos críticos:

1. Crear cuenta de administrador

Define el email y contraseña del usuario administrador. Esta será la única cuenta con permisos completos inicialmente.

2. Configurar servidor local

El sistema detecta automáticamente el servidor local donde se instaló. Verifica que muestra estado «Connected» en verde.

3. Habilitar servicios opcionales

Activa el proxy inverso Traefik (recomendado) para gestión automática de SSL y enrutamiento de dominios. También puedes habilitar monitoreo con Prometheus si lo deseas.

4. Configurar backups

Define un bucket S3 compatible (AWS S3, MinIO, Backblaze B2) para backups automáticos de bases de datos y configuración.

Desplegar tu primera aplicación con Coolify Docker Compose

Una vez configurado el sistema, desplegar aplicaciones es extremadamente sencillo. Vamos a ver tres métodos principales:

Método 1: Desde repositorio Git

  1. Haz clic en «+ New Resource» → «Application»
  2. Selecciona «Public Repository» o conecta tu cuenta GitHub/GitLab
  3. Pega la URL del repositorio (ej: https://github.com/usuario/mi-app)
  4. La plataforma detecta automáticamente el framework (Next.js, Django, Laravel, etc.)
  5. Define el dominio donde se publicará la aplicación
  6. Haz clic en «Deploy» y espera el proceso automático

Método 2: Servicios one-click

Para bases de datos y servicios populares:

  1. Navega a «+ New Resource» → «Database» o «Service»
  2. Selecciona el servicio deseado (PostgreSQL, MySQL, Redis, WordPress, etc.)
  3. Personaliza versión, credenciales y configuración
  4. Deploy en un clic

Método 3: Docker Compose personalizado

Para aplicaciones multi-contenedor avanzadas, utiliza archivos docker-compose.yml directamente:

services:
  app:
    image: node:20-alpine
    environment:
      - DATABASE_URL=${DATABASE_URL}
      - PORT=3000
    volumes:
      - ./app:/app
    ports:
      - "3000:3000"
    command: npm start

  db:
    image: postgres:16-alpine
    environment:
      - POSTGRES_PASSWORD=${SERVICE_PASSWORD_DB}
    volumes:
      - db-data:/var/lib/postgresql/data

volumes:
  db-data:

Coolify detecta automáticamente variables de entorno con sintaxis ${VARIABLE} y te permite definirlas en la interfaz antes del despliegue.

Variables mágicas en Coolify Docker Compose

Una característica única de esta plataforma son las «magic variables», que generan automáticamente valores útiles según patrones específicos:

  • SERVICE_FQDN_SERVICIO: Genera el dominio completo del servicio
  • SERVICE_URL_SERVICIO: URL completa incluyendo protocolo https://
  • SERVICE_USER_SERVICIO: Usuario aleatorio de 16 caracteres
  • SERVICE_PASSWORD_SERVICIO: Contraseña segura aleatoria
  • SERVICE_PASSWORD_64_SERVICIO: Contraseña de 64 caracteres
  • SERVICE_BASE64_SERVICIO: String aleatorio en base64

Ejemplo práctico en docker-compose:

services:
  postgres:
    image: postgres:16
    environment:
      - POSTGRES_USER=${SERVICE_USER_POSTGRES}
      - POSTGRES_PASSWORD=${SERVICE_PASSWORD_64_POSTGRES}
      - POSTGRES_DB=production

  app:
    image: myapp:latest
    environment:
      - DATABASE_URL=postgresql://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_64_POSTGRES}@postgres:5432/production
      - APP_URL=${SERVICE_URL_APP}

El sistema sustituye automáticamente estas variables durante el despliegue, generando credenciales seguras sin intervención manual.

Gestión de dominios y SSL en Coolify Docker Compose

La gestión de certificados SSL es completamente automática gracias a la integración con Let’s Encrypt:

Configurar dominio para aplicación

  1. Accede a tu aplicación desplegada en el dashboard
  2. En la sección «Domains», añade tu dominio: app.tudominio.com
  3. Configura el registro DNS tipo A apuntando a la IP de tu servidor
  4. Activa «Generate SSL Certificate»
  5. El sistema solicita automáticamente el certificado vía HTTP-01 challenge
  6. En 30-60 segundos tu aplicación estará accesible por HTTPS

Renovación automática

Los certificados se renuevan automáticamente 30 días antes de su expiración. No requiere ninguna acción manual.

Múltiples dominios

Puedes asignar múltiples dominios a una misma aplicación, útil para www, subdominios de idiomas, o aliases. Cada dominio obtiene su propio certificado SSL.

Monitorización y logs en Coolify Docker Compose

El sistema incluye herramientas robustas para supervisar tus aplicaciones:

Logs en tiempo real

Accede a logs de construcción y ejecución directamente desde la interfaz. Útil para debugging de errores durante despliegues o en producción.

Métricas del servidor

El dashboard muestra uso de CPU, RAM, disco y red de cada servidor gestionado. Configura alertas para notificarte cuando los recursos superen umbrales definidos.

Notificaciones

Integra Discord, Telegram, Slack o email para recibir alertas sobre:

  • Despliegues exitosos o fallidos
  • Aplicaciones caídas o que no responden
  • Uso alto de recursos
  • Certificados SSL próximos a expirar (aunque raro con renovación automática)

Backups automáticos con Coolify Docker Compose

Proteger tus datos es crítico. Esta solución ofrece backups automatizados a almacenamiento S3 compatible:

Configurar destino de backups

Navega a Settings → Backup y añade tus credenciales S3:

  • Endpoint: URL del servicio S3 (AWS, Wasabi, Backblaze B2, MinIO)
  • Bucket: Nombre del bucket donde almacenar backups
  • Access Key y Secret Key: Credenciales de acceso
  • Región: Región del bucket (si aplica)

Programar backups de bases de datos

Para cada base de datos desplegada (PostgreSQL, MySQL, MongoDB, etc.), activa «Scheduled Backups» y define:

  • Frecuencia: Diaria, semanal, o expresión cron personalizada
  • Retención: Número de backups a conservar antes de eliminar antiguos
  • Compresión: Gzip para reducir tamaño de almacenamiento

Restaurar desde backup

Desde la interfaz, lista los backups disponibles de cualquier base de datos y restaura con un clic. El proceso crea una nueva instancia sin afectar la actual, permitiendo validar antes de cambiar.

Gestión multi-servidor con Coolify Docker Compose

Una ventaja clave de esta plataforma es gestionar múltiples servidores desde una sola interfaz:

Añadir servidor remoto

  1. Navega a Servers → Add Server
  2. Define nombre descriptivo y dirección IP
  3. Configura autenticación SSH (clave privada o usuario/contraseña)
  4. El sistema valida conectividad e instala el agente automáticamente
  5. Ahora puedes desplegar aplicaciones en ese servidor desde el mismo dashboard

Distribución de carga

Despliega la misma aplicación en múltiples servidores para alta disponibilidad. Configura un balanceador de carga externo (Cloudflare Load Balancing, HAProxy) apuntando a las IPs de tus servidores.

Integración CI/CD con Coolify Docker Compose

Automatiza despliegues integrando tu pipeline CI/CD con la API de esta solución:

Generar token de API

En Settings → API Tokens, crea un token con permisos de deployment. Guarda el token de forma segura.

Webhook para despliegue automático

Cada aplicación tiene una URL de webhook única. Configúrala en GitHub Actions, GitLab CI o tu sistema CI/CD:

# .github/workflows/deploy.yml
name: Deploy to Coolify
on:
  push:
    branches: [main]

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - name: Trigger deployment
        run: |
          curl -X POST https://tu-coolify.com/api/v1/deploy \
            -H "Authorization: Bearer ${{ secrets.COOLIFY_TOKEN }}" \
            -H "Content-Type: application/json" \
            -d '{"uuid": "app-uuid-aqui"}'

Cada push a main despliega automáticamente la nueva versión.

Mejores prácticas de seguridad

  • Firewall configurado: Solo abre puertos 22, 80, 443, 8000 y 6001. Bloquea todo lo demás
  • SSH con claves: Deshabilita autenticación por contraseña en SSH
  • Actualizaciones regulares: Mantén el sistema operativo y Docker actualizados
  • Backups frecuentes: Programa backups diarios a S3
  • Secretos en variables de entorno: Nunca hardcodees credenciales en código
  • Redes privadas: Usa redes Docker internas para comunicación entre contenedores
  • Escaneo de vulnerabilidades: Implementa Trivy o Clair para analizar imágenes Docker

Comparativa: Coolify vs alternativas comerciales

CaracterísticaCoolifyHerokuVercelRailway
Coste mensual$0 (self-hosted)Desde $5/dynoDesde $20/proyectoDesde $5/mes
Control de datosTotalLimitadoLimitadoLimitado
SSL automático✅ Sí✅ Sí✅ Sí✅ Sí
Git integration✅ Sí✅ Sí✅ Sí✅ Sí
Docker Compose✅ Nativo❌ No❌ No✅ Limitado
Servidores propios✅ Sí❌ No❌ No❌ No
API completa✅ Sí✅ Sí✅ Sí✅ Sí
Open source✅ Apache 2.0❌ Propietario❌ Propietario❌ Propietario

Solución de problemas comunes

Problema: Instalación falla en Docker

Solución: Instala Docker manualmente antes del script:

curl -fsSL https://get.docker.com | sh
systemctl enable --now docker
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash

Problema: Puertos ya ocupados

Solución: Verifica qué proceso usa los puertos y detén servicios conflictivos:

netstat -tuln | grep -E '8000|6001'
systemctl stop apache2  # o nginx, según tu caso

Problema: Certificado SSL no se genera

Solución: Asegúrate que:

  • El dominio apunta correctamente a tu IP (verifica con dig tudominio.com)
  • El puerto 80 está abierto en firewall
  • No hay límites de rate en Let’s Encrypt (máximo 50 certificados/semana por dominio)

Problema: Aplicación no arranca

Solución: Revisa los logs de construcción y ejecución en la interfaz. Los errores más comunes son:

  • Variables de entorno faltantes o incorrectas
  • Puerto mal configurado (la aplicación debe escuchar en 0.0.0.0, no localhost)
  • Dependencias no instaladas correctamente

Preguntas frecuentes (FAQ)

¿Puedo usar Coolify en producción?
Sí, miles de desarrolladores y empresas ya lo usan en producción. La plataforma es estable y recibe actualizaciones regulares.

¿Cuántas aplicaciones puedo desplegar?
No hay límites artificiales. Solo estás limitado por los recursos de tu servidor (CPU, RAM, disco).

¿Funciona con Docker Swarm o Kubernetes?
Docker Swarm está soportado. Kubernetes está en desarrollo activo y llegará en futuras versiones.

¿Puedo migrar desde Heroku?
Sí, la mayoría de aplicaciones Heroku son compatibles. Necesitarás adaptar variables de entorno y posiblemente el Procfile a formato docker-compose.

¿Hay soporte comercial disponible?
El proyecto es open-source con comunidad activa en Discord. También existe una versión cloud gestionada en app.coolify.io con soporte premium.

Conclusión

Implementar tu propio PaaS autohospedado con Coolify Docker Compose es una decisión estratégica que te otorga control total sobre tus despliegues, elimina dependencias de terceros y reduce costes operativos significativamente. Con más de 48.000 estrellas en GitHub y una comunidad activa, esta solución se ha consolidado como la alternativa open-source líder frente a servicios comerciales.

La combinación de facilidad de uso, potencia técnica y flexibilidad hace de esta plataforma la opción ideal tanto para desarrolladores individuales como para equipos que buscan profesionalizar su infraestructura sin perder autonomía.

Si estás interesado en más guías sobre servicios autohospedados con Docker, visita nuestra categoría Docker Compose donde encontrarás tutoriales sobre Portainer, Traefik, Nextcloud y muchas más herramientas esenciales.


Enlaces útiles:

Avatar

Por Mid

0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x