# Guía coolify

Coolify te permite desplegar y gestionar fácilmente **aplicaciones modernas, contenedores Docker, bases de datos, sitios estáticos, etc.**, todo con interfaz web y SSL automático.

Ventajas:

* **Automatización de tareas:** Ya no necesita administrar sus servidores. Coolify sí por ti.
* **Sin bloqueo de proveedor:** Todas las configuraciones se almacenan en sus servidores, por lo que todo funciona sin conexión a Coolify (excepto integraciones y automatizaciones).
* **Monitorización**: Puedes recibir notificaciones en tus plataformas favoritas (Discord, Telegram, correo electrónico, etc.) cuando algo sale mal o se necesita una acción de su parte.

### **Requisitos previos**

Para esta práctica trabajaremos con:

* **Sistema operativo:** Ubuntu Server 22.04 LTS (o Debian 12).
* **CPU:** 2 núcleos o más.
* **RAM:** mínimo 2 GB (recomendado 4 GB+).
* **Almacenamiento:** 20 GB mínimo (más si alojarás bases de datos o contenedores pesados).
* **Acceso:** SSH como root o usuario con sudo.
* **Dominio:** opcional, pero recomendado (para HTTPS automático).

> ⚠️ *Coolify no se recomienda instalar en servidores con otros paneles (Plesk, cPanel, ISPConfig, etc.) por conflictos de puertos y Docker.*

Antes de nada, debemos asegurarnos que tenemos algun software instalado y actualizado el sistema:

```bash
sudo apt update && apt upgrade -y
sudo apt install curl -y 
```

***

## **Instalación y configuración inicial**

Coolify ofrece un instalador automatizado. Instala curl, wget, git, jq y openssl así como openssh y docker (si no hay nada de esto instalado) así que para la instalación simplemente vamos a ejecutar lo siguiente como **root** o **sudo**:

```bash
sudo curl -fsSLO https://cdn.coollabs.io/coolify/install.sh
sudo bash install.sh
```

👉 Esto descargará los contenedores de Coolify y levantará el servicio con Docker Compose, ten en cuenta que puede tardar un largo rato, ten paciencia, el *developer* te deja algún chiste para que te entretengas, búscalo :wink:

#### **Configuración inicial**

Toca configurarlo, una vez termine la instalación, verás un mensaje tal que asi:

```
Your instance is ready to use!

You can access Coolify through your Public IPV4: http://<IP>:8000  

If your Public IP is not accessible, you can use the following Private IPs: 

http://10.0.0.5:8000
http://10.0.1.1:8000
http://10.0.2.1:8000
http://<IPv6>:8000

WARNING: It is highly recommended to backup your Environment variables file 
(/data/coolify/source/.env) to a safe location, outside of this server (e.g. into a Password Manager).
```

Abre el navegador y accede a:

```
http://<IP_de_tu_servidor>:8000
```

o, si ya configuraste un dominio:

```
https://tusubdominio.midominio.com
```

> Si usas un dominio, asegúrate de apuntarlo a la IP de tu servidor antes del primer inicio.\
> Coolify generará certificados SSL automáticamente con **Let’s Encrypt**.

Deberias encontrarte una pantalla:

<figure><img src="https://539580950-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiKvwltOme7zTxep3LVyW%2Fuploads%2FSkibgQgFxde3LSYZ4Cz1%2Fimage.png?alt=media&#x26;token=9bb2d5ee-965b-448c-9bb9-3d459bd696c3" alt=""><figcaption></figcaption></figure>

#### **Primer acceso y cuenta de administrador**

Ahora toca, en el primer inicio, crear un **usuario administrador**:

* Email
* Contraseña
* Nombre de la instancia (por ejemplo, "Mi Coolify")

Luego accederás al **panel principal de Coolify** 🎉

***

## Guia de uso

<div align="left"><figure><img src="https://539580950-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiKvwltOme7zTxep3LVyW%2Fuploads%2FHfxW4llViqMRvRAHadQ4%2Fimage.png?alt=media&#x26;token=9136f194-5395-4592-b2cf-19d683ca29cf" alt="" width="210"><figcaption></figcaption></figure></div>

Este es el menú de la app, vamos a ver como realizar algunas prácticas comunes como son:

1. Conectar un servidor
2. Desplegar una aplicación
3. Desplegar un contenedor
4. Conectar una BD

### **1. Conectar tu servidor (si tienes varios)**

Dependiendo de lo que le hayas marcado como opción durante la instalación, verás que coolify tendrá un servidor por defecto que será localhost o el servidor especificado pero Coolify puede gestionar múltiples servidores vía SSH.&#x20;

Ten en cuenta que cuando añades otro servidor en Coolify, lo que estás haciendo **no es solo registrarlo**, sino convertirlo en un **nodo remoto de despliegue p**or eso te pedirá validarlo e instalar Docker: Coolify necesita poder **controlar ese servidor automáticamente**. Una vez validado e instalado Docker, Coolify podrá:

* Desplegar aplicaciones directamente desde el panel.
* Gestionar redes y dominios.
* Actualizar contenedores automáticamente.
* Mostrarte métricas de recursos de ese servidor.
* Instalar certificados SSL con Traefik.

Para conectar otro es tan sencillo como:

1. En el panel, ve a **Servers → Add Server → Local / Remote**.
2. Si es el mismo donde está instalado, selecciona **Local**.\
   Si quieres conectar otro servidor (por ejemplo, otro VPS):
   * Añade su IP.
   * Carga su clave SSH o usa autenticación por clave pública.
3. Valida el servidor siguiendo los pasos que te pide.

Vamos a abrir otra máquina virtual dentro de la misma red y conectarla:

<div align="left"><figure><img src="https://539580950-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiKvwltOme7zTxep3LVyW%2Fuploads%2FpqxEboad6T5PsY1YEsi5%2Fimage.png?alt=media&#x26;token=b1954e54-01e0-4858-b4f9-bb854b6b219e" alt="" width="563"><figcaption></figcaption></figure></div>

Esto nos dará la posibilidad de conectarnos en remoto y gestionarlo como un nodo más de coolify para desplegar apps.

### **2. Desplegar una aplicación**

Coolify te permite desplegar apps desde repositorios **GitHub / GitLab / Bitbucket**, o manualmente con un Dockerfile o imagen de contenedor.

#### Opción 1: Desde un repositorio Git

1. Crea una nueva aplicación:\
   **Applications → + New → Git Repository**
2. Conecta tu cuenta GitHub (OAuth) o introduce la URL del repo.
3. Configura:
   * **Branch:** normalmente `main` o `master`.
   * **Build Pack:** Node.js, PHP, Python, Dockerfile, etc.
   * **Root Directory:** si tu código no está en la raíz.
   * **Port:** el puerto que tu aplicación expone.
4. Activa **Auto Deploy** (opcional).
5. Pulsa **Deploy** — y listo 🚀

### 3. Desplegar contenedor o imagen de Docker

* Elige “Deploy from Docker Image”.
* Indica la imagen (por ejemplo, `nginx:latest` o `youruser/app:1.0`).
* Define variables de entorno si son necesarias.
* Asigna un dominio y Coolify se encargará del SSL.

#### 3.1. Despliegue de docker compose

Al crear una nueva app en el panel:

1. Pulsa **“New Application”**
2. Selecciona **“Docker Compose”**
3. Elige:
   * En qué servidor quieres desplegarla (puede ser remoto o local).
   * Nombre de la app.
4. Sube o pega el contenido de tu `docker-compose.yml`.
5. Guarda y despliega 🚀

👉 Coolify levantará automáticamente todos los servicios definidos en ese archivo y los gestionará como una sola aplicación.

#### Ejemplo simple

Supongamos que tienes este `docker-compose.yml` para un blog en Ghost:

```yaml
version: "3.8"

services:
  ghost:
    image: ghost:5
    restart: always
    ports:
      - "2368:2368"
    environment:
      url: https://blog.midominio.com
    volumes:
      - ghost-data:/var/lib/ghost/content

volumes:
  ghost-data:
```

Si lo pegas directamente en Coolify:

* Se desplegará Ghost en tu servidor remoto o local.
* Puedes ir a la sección “Domains” y asignar `blog.midominio.com`.
* Coolify se encarga de redirigir y aplicar HTTPS automáticamente. ✅

#### **Bases de datos**

Puedes crear bases de datos directamente desde el panel:

1. **Databases → + New Database**
2. Elige tipo:
   * PostgreSQL
   * MySQL / MariaDB
   * Redis
   * MongoDB
3. Coolify creará el contenedor automáticamente.
4. Puedes conectar tus aplicaciones a través de variables de entorno.

***

<details>

<summary>Comandos útiles</summary>

Algunos comandos que te pueden salvar la vida, recordatorio de Docker:

Ver estado de Coolify:

```bash
docker ps
```

Reiniciar Coolify:

```bash
docker compose -f /data/coolify/docker-compose.yml restart
```

Ver logs:

```bash
docker logs -f coolify
```

Actualizar Coolify a la última versión:

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

Detener Coolify:

```bash
docker compose -f /data/coolify/docker-compose.yml down
```

</details>

<details>

<summary>Tips de seguridad</summary>

Para coolify, se recomienda:

1. Activar el firewall:

   ```bash
   ufw allow 22,80,443,3000/tcp
   ufw enable
   ```
2. Desactivar el acceso SSH por contraseña (usa claves públicas).
3. Configurar backups regulares.
4. Usar HTTPS siempre (Coolify lo gestiona automáticamente) o puedes forzar la regeneración desde **Domain Settings → Renew SSL**..

</details>

{% hint style="warning" %}

### **Desinstalar Coolify (si fuera necesario)**

**Para dar de baja el servicio:**

```bash
docker compose -f /data/coolify/docker-compose.yml down -v
rm -rf /data/coolify
```

Para desinstalarlo por completo y borrar todos los datos sigue la siguiente guía: <https://coolify.io/docs/get-started/uninstallation>
{% endhint %}

#### Recursos útiles

* Documentación: <https://coolify.io/docs>
* Guia de instalación: <https://coolify.io/docs/get-started/installation#quick-installation-recommended>
*
