Je suis un grand utilisateur des services de PaaS (Koyeb, Clever Cloud, Railway.app, etc.), malheureusement le prix de ces services est souvent un frein pour les projets personnels. C’est dans cette vidéo de Melkey que j’ai découvert Coolify.

Déployer Coolify Link to heading

Hardware de la démo : Link to heading

Serveur cx11 chez Hetzner

  • Cores : 1
  • CPU Type : shared
  • Architecture : x86
  • Memory : 2.0 GB
  • Disk : 20 GB
  • Storage Type : local
  • Included Traffic : 20 TB
  • Pricings € 3.9480000000000000
1hcloud server create --image ubuntu-22.04 --name "coolify" --type cx11 --ssh-key romain

Installation Link to heading

L’installation est très simple, Coolify donne curl | bash1 pour installer le service.

Je me connecte donc en root au serveur créé sur Hetzner et j’exécute la commande suivante :

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

Suite à ça, on peut se connecter à l’interface web de Coolify

1Congratulations! Your Coolify instance is ready to use.
2
3Please visit http://xxx.xxx.xx.xxx:8000 to get started.

Configuration Link to heading

1. Création du compte admin Link to heading

Création du compte admin
Création du compte admin

Une fois le compte admin créé et connecté, vous arriverez sur la page de onboarding. Je recommande de la passer pour le moment et de paramétrer vos noms de domaine et adresses e-mail dans les paramètres.

Onboarding
Onboarding

2. Configuration du nom de domaine Link to heading

Settings
Paramètres

Configuration du nom de domaine
Configuration du nom de domaine

Configuration du nom de domaine sur Cloudflare
Configuration du nom de domaine sur Cloudflare

Vous pouvez maintenant accéder à votre instance de Coolify en utilisant l’URL de votre nom de domaine.

Premier projet Link to heading

Pour illustrer l’utilisation de Coolify, je vais déployer un projet de démonstration.

Création du premier projet

  1. Nom du projet

    Nom du projet

  2. Environnement

    Environnement

  3. Ajout d’une ressource

    Ajout d’une ressource

  4. Création de la base de données PostgreSQL

    Création de la base de données PostgreSQL

  5. Selection de la destination

    Selection de la destination

  6. Configuration de la base de données

    Configuration de la base de données

  7. Logs de demarages

    Logs de demarages

  8. Ajout du serveur en golang

    Ajout d’une ressource

    Le repository est publique ce qui nous facilite la tache, on peut directement selectionner « Public repository » et ajouter le lien du repository.

  9. Configuration de l’application

Nous devons configurer les Environment Variables pour notre application.

1PORT=3000
2DB_URI=postgres://postgres:password@mgwkwwk:5432/postgres
3ENV=production
  1. Déploiement

On modifie le Nixpack en Dockerfile.

Dockerfile

Paramètres de healthcheck.

Healthcheck

On peut commencer le déploiement.

Deploy

🚀 We are live 🚀

Live


  1. Je sais que curl | bash est controversé, Coolify propose une autre méthode d’installation https://coolify.io/docs/installation#manually↩︎