Si vous déployez des apps sur Vercel ou Render, vous connaissez le confort d'un PaaS : push sur main, le déploiement se fait tout seul, SSL inclus, domaine configuré en deux clics. Coolify reproduit exactement cette expérience — mais sur votre propre VPS. C'est un PaaS open-source auto-hébergé qui gère pour vous le reverse proxy, les certificats Let's Encrypt, les déploiements Git, les bases de données et une cinquantaine de services préconfigurés (n8n, Minio, Plausible, Ghost…).
Développé par Andras Bacsai et maintenu activement depuis 2021, Coolify v4 est aujourd'hui suffisamment mature pour la production. Le projet compte plus de 40 000 étoiles sur GitHub et une communauté Discord très réactive. L'interface est construite en Laravel + Livewire côté serveur, ce qui donne une UI réactive sans JavaScript bundle lourd — et une installation qui tient en une seule commande bash.
Ce guide couvre l'installation sur un VPS Ubuntu, la configuration initiale, et le déploiement d'une application Next.js depuis GitHub avec SSL automatique et variables d'environnement. Aucune connaissance de Kubernetes ou de Traefik n'est requise : Coolify configure tout en arrière-plan.

Coolify vs les PaaS cloud : pourquoi auto-héberger
Vercel, Render, Railway et Fly.io sont excellents, mais leur modèle de pricing passe rapidement à la caisse dès que vous scalez. Un projet avec quelques crons, une base Postgres et un Redis peut coûter 50-150 €/mois sur ces plateformes. Le même stack sur un VPS Hetzner à 20 €/mois avec Coolify revient à une fraction du prix — et vous gardez la main sur vos données.
L'argument "vendor lock-in" est aussi réel : une app Vercel qui dépend de ses Edge Functions, de son image optimization ou de ses middlewares propriétaires n'est pas portable. Avec Coolify, vous déployez des conteneurs Docker standard — si vous changez d'hébergeur, vous migrez le VPS, pas l'architecture.
En revanche, l'auto-hébergement a un coût caché : vous êtes responsable des mises à jour du serveur, des sauvegardes, et de la surveillance. Coolify réduit cette charge (il se met à jour lui-même, gère les backups vers S3, et intègre des health checks), mais il ne l'annule pas. Pour un projet critique en production, prévoyez des alertes et un monitoring externe (UptimeRobot, Better Uptime).
Prérequis : serveur, ports et accès SSH
Coolify tourne sur n'importe quel VPS Linux avec Docker. Configuration minimale recommandée :
| Ressource | Minimum | Recommandé |
|---|---|---|
| CPU | 2 vCPU | 4 vCPU |
| RAM | 2 GB | 4 GB |
| Disque | 30 GB SSD | 80 GB SSD |
| OS | Ubuntu 22.04 LTS | Ubuntu 24.04 LTS |
Les ports à ouvrir dans votre firewall (UFW ou règles cloud) : 22 (SSH), 80 (HTTP), 443 (HTTPS), 8000 (dashboard Coolify, avant configuration d'un domaine dédié). Vous pouvez ensuite restreindre le port 8000 à votre IP une fois le dashboard accessible via un sous-domaine avec SSL.
Un accès root ou sudo est requis pour l'installation. Coolify installe automatiquement Docker s'il n'est pas présent — inutile de le faire manuellement.
Installation : une commande, deux minutes
Connectez-vous en SSH à votre serveur et lancez le script officiel :
# Installation officielle Coolify v4
# Le script installe Docker si absent, configure Traefik et démarre les conteneurs
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
Le script prend 1 à 3 minutes selon la connexion du serveur. Il installe Docker, pull les images Coolify (API Laravel, dashboard, Traefik, Soketi pour les WebSockets), et démarre le stack via Docker Compose. À la fin, il affiche l'URL du dashboard : http://VOTRE_IP:8000.
Ouvrez cette URL dans votre navigateur et créez votre compte admin. Ce premier compte est le seul à pouvoir être créé via l'interface publique — les suivants se font par invitation, ce qui est correct en termes de sécurité.
Pour les mises à jour futures, Coolify peut se mettre à jour lui-même depuis son interface Settings → Updates. Vous pouvez aussi automatiser ça avec un cron ou le scheduler intégré.
Configuration initiale : domaine, SSL et serveur cible
Une fois connecté, trois étapes avant de déployer quoi que ce soit :
1. Associer un domaine au dashboard. Dans Settings → General, renseignez https://coolify.votre-domaine.com. Coolify configurera automatiquement Traefik pour rediriger le port 8000 vers ce domaine avec un certificat Let's Encrypt. DNS à pointer : un A record coolify.votre-domaine.com → IP_DU_VPS.
2. Configurer le serveur cible. Dans Servers → Localhost, Coolify valide qu'il peut parler à Docker en local. Si vous avez plusieurs VPS, vous pouvez en ajouter d'autres ici et déployer vos apps sur n'importe lequel depuis une interface centralisée.
3. Créer un environnement. Les environnements (production, staging) permettent d'isoler les apps et les secrets. Par défaut, un environnement production est créé — vous pouvez en ajouter un staging avec les mêmes apps pointant vers des branches différentes.
Déployer une app Next.js depuis GitHub
Dans un projet Coolify, cliquez Add New Resource → Application. Choisissez votre source Git (GitHub via OAuth app, ou un repo public sans auth). Sélectionnez le repository et la branche.
Coolify détecte automatiquement que c'est un projet Next.js via Nixpacks — pas besoin de Dockerfile. Il génère le Dockerfile à la volée, installe les dépendances, lance next build et démarre le serveur. Vous pouvez aussi fournir votre propre Dockerfile si vous avez des besoins spécifiques (multi-stage build, layer caching).
# Exemple de Dockerfile custom pour Next.js avec output standalone
# Coolify le détecte automatiquement à la racine du repo
FROM node:22-alpine AS builder
WORKDIR /app
COPY package.json bun.lockb ./
RUN npm install -g bun && bun install --frozen-lockfile
COPY . .
RUN bun run build
FROM node:22-alpine AS runner
WORKDIR /app
ENV NODE_ENV=production
COPY --from=builder /app/.next/standalone ./
COPY --from=builder /app/.next/static ./.next/static
COPY --from=builder /app/public ./public
EXPOSE 3000
CMD ["node", "server.js"]
Configurez ensuite le domaine de l'app (app.votre-domaine.com), les variables d'environnement (section Environment Variables, avec support des secrets chiffrés), et le port exposé (3000 pour Next.js). Cliquez Deploy — Coolify clone le repo, build l'image, la déploie et configure Traefik + SSL automatiquement.
Les déploiements suivants se déclenchent via webhook GitHub : à chaque push sur la branche configurée, Coolify rebuild et redéploie. Zero downtime par défaut grâce à la stratégie rolling update de Traefik. Pour des stratégies plus avancées, voir l'article sur le déploiement blue/green et canary.
Bases de données, services et sauvegardes
Coolify gère le cycle de vie complet des bases de données. Dans un projet, Add Resource → Database pour créer une instance PostgreSQL, MySQL, MariaDB, MongoDB, Redis ou KeyDB. La base tourne dans un conteneur Docker avec un volume persistant — les credentials sont générés automatiquement et injectables via variables d'environnement dans vos apps.
La section Services donne accès à un catalogue de ~60 applications préconfigurées en un clic : n8n pour l'automatisation, Minio comme stockage objet S3-compatible, Plausible Analytics, Umami, Ghost, Gitea, Uptime Kuma… Chacune déploie son Docker Compose avec les volumes, réseaux et variables d'environnement préconfigurés.
Pour les sauvegardes, Coolify supporte l'export automatique vers n'importe quel stockage S3-compatible (AWS S3, Backblaze B2, Minio self-hosted). Configurez la fréquence (quotidienne, hebdomadaire) et la rétention dans Settings → Backups. Les dumps de bases de données sont chiffrés avant upload — bonne pratique de base pour la conformité RGPD.
En pratique
Chez Kreio, Coolify tourne sur un serveur (8 vCPU, 32 GB RAM, 500 GB SSD) et héberge plusieurs projets clients en staging, des outils internes et un environnement de test Next.js. Le même serveur fait tourner Redis, une instance Postgres de dev et Garage comme stockage S3 local. Avant Coolify, ce stack nécessitait des configurations Nginx manuelles, des certificats Certbot à renouveler et des scripts de déploiement artisanaux.
Le principal gain n'est pas financier — c'est le temps. Ajouter un nouveau projet prend 5 minutes au lieu d'une demi-journée de configuration. Les preview deployments (une URL par PR GitHub) s'activent en cochant une case dans les settings du projet.
Pour les projets en production sérieux, doublez d'un monitoring externe : Coolify n'alerte pas par email ou Slack nativement (c'est dans la roadmap). UptimeRobot gratuit couvre la surveillance HTTP basique ; pour les métriques applicatives, un Prometheus + Grafana sur le même VPS complète le tableau.