Accueil » 📂N8N » 📂Noeuds » Automatisation simplifiée avec NocoDB et n8n
Valentin Charrier présentant le guide complet du Automatise avec NocoDB & N8N Hostinger

Introduction à N8N et au Self-Hosting avec NoCoDB sur VPS Hostinger

Dans un monde de plus en plus automatisé, la maîtrise de ses outils d’automatisation est un atout majeur. N8N est une plateforme open-source qui facilite la création de workflows automatisés sans code complexe. En l’auto-hébergeant (self-hosting) sur un VPS Hostinger, vous gardez un contrôle total sur vos données et vos processus, tout en bénéficiant de performances optimales.

Qu’est-ce que N8N ?

N8N est une solution d’automatisation puissante qui permet de connecter diverses applications et services via des workflows personnalisés. Grâce à son interface intuitive et ses nombreux connecteurs, N8N vous aide à automatiser des tâches répétitives, à orchestrer des processus complexes et à centraliser la gestion de vos données.

Pourquoi choisir le self-hosting de N8N ?

Le self-hosting consiste à installer et gérer N8N sur votre propre serveur, ici un VPS Hostinger. Cette méthode offre plusieurs avantages :

Exigences techniques pour le self-hosting N8N

Pour installer N8N sur un VPS Hostinger, quelques prérequis techniques sont nécessaires :

Installer N8N avec NoCoDB sur Hostinger : les étapes clés

1. Préparer le VPS Hostinger : connectez-vous en SSH et mettez à jour le système.

2. Configurer Docker : installez Docker et Docker Compose si ce n’est pas déjà fait.

3. Remplacer le fichier Docker Compose : modifiez le fichier docker-compose.yml pour intégrer N8N et NoCoDB.

version: "3.7"

services:
  traefik:
    image: "traefik"
    restart: always
    command:
      - "--api=true"
      - "--api.insecure=true"
      - "--providers.docker=true"
      - "--providers.docker.exposedbydefault=false"
      - "--entrypoints.web.address=:80"
      - "--entrypoints.web.http.redirections.entryPoint.to=websecure"
      - "--entrypoints.web.http.redirections.entrypoint.scheme=https"
      - "--entrypoints.websecure.address=:443"
      - "--certificatesresolvers.mytlschallenge.acme.tlschallenge=true"
      - "--certificatesresolvers.mytlschallenge.acme.email=${SSL_EMAIL}"
      - "--certificatesresolvers.mytlschallenge.acme.storage=/letsencrypt/acme.json"
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - traefik_data:/letsencrypt
      - /var/run/docker.sock:/var/run/docker.sock:ro

  n8n:
    image: docker.n8n.io/n8nio/n8n
    restart: always
    ports:
      - "127.0.0.1:5678:5678"
    labels:
      - traefik.enable=true
      - traefik.http.routers.n8n.rule=Host(`${SUBDOMAIN}.${DOMAIN_NAME}`)
      - traefik.http.routers.n8n.tls=true
      - traefik.http.routers.n8n.entrypoints=web,websecure
      - traefik.http.routers.n8n.tls.certresolver=mytlschallenge
      - traefik.http.middlewares.n8n.headers.SSLRedirect=true
      - traefik.http.middlewares.n8n.headers.STSSeconds=315360000
      - traefik.http.middlewares.n8n.headers.browserXSSFilter=true
      - traefik.http.middlewares.n8n.headers.contentTypeNosniff=true
      - traefik.http.middlewares.n8n.headers.forceSTSHeader=true
      - traefik.http.middlewares.n8n.headers.SSLHost=${DOMAIN_NAME}
      - traefik.http.middlewares.n8n.headers.STSIncludeSubdomains=true
      - traefik.http.middlewares.n8n.headers.STSPreload=true
      - traefik.http.routers.n8n.middlewares=n8n@docker
    environment:
      - N8N_HOST=${SUBDOMAIN}.${DOMAIN_NAME}
      - N8N_PORT=5678
      - N8N_PROTOCOL=https
      - NODE_ENV=production
      - WEBHOOK_URL=https://${SUBDOMAIN}.${DOMAIN_NAME}/
      - GENERIC_TIMEZONE=${GENERIC_TIMEZONE}
    volumes:
      - n8n_data:/home/node/.n8n
      - /local-files:/files

  nocodb:
    image: nocodb/nocodb:latest
    restart: always
    ports:
      - "127.0.0.1:8080:8080"
    environment:
      - NC_DB=pg://nocodb_postgres:5432?u=nocodb&p=nocodb&d=nocodb
      # Modifie la connexion DB selon ton besoin (ici, un exemple PostgreSQL)
    labels:
      - traefik.enable=true
      - traefik.http.routers.nocodb.rule=Host(`nocodb.${DOMAIN_NAME}`)
      - traefik.http.routers.nocodb.tls=true
      - traefik.http.routers.nocodb.entrypoints=web,websecure
      - traefik.http.routers.nocodb.tls.certresolver=mytlschallenge

  nocodb_postgres:
    image: postgres:14
    restart: always
    environment:
      - POSTGRES_USER=nocodb
      - POSTGRES_PASSWORD=nocodb
      - POSTGRES_DB=nocodb
    volumes:
      - nocodb_pgdata:/var/lib/postgresql/data

volumes:
  traefik_data:
    external: true
  n8n_data:
    external: true
  nocodb_pgdata:

4. Lancer les services : arrêtez puis démarrez Docker Compose pour appliquer la configuration.

docker compose down && docker compose up -d

5. Accéder aux interfaces : utilisez les sous-domaines pour accéder à N8N et NoCoDB via un navigateur.

Cette méthode permet de bénéficier d’une interface NoCoDB conviviale pour gérer vos bases de données sans complexe, tout en automatisant les flux avec N8N.

Et alors qu’est-ce que tu nous dis là.. ?

Le self-hosting de N8N associé à NoCoDB sur un VPS Hostinger est une solution idéale pour les entreprises souhaitant maîtriser leurs automatisations avec une configuration sécurisée et personnalisable. Vous disposez ainsi d’un environnement flexible, performant, et contrôlé à chaque étape.

Pour une meilleure compréhension, la suite de cet article détaillera comment configurer ces outils en pratique, créer des workflows efficaces et optimiser vos processus d’automatisation.

Quotien Intellectuel pour illustrer l'apprentissage du noeud N8N

Comment installer NoCoDB et n8n sur un VPS Hostinger avec Docker ?

Mise en pratique : Configurer et utiliser N8N avec NoCoDB sur VPS Hostinger

1. Configuration initiale et connexion

La première étape après l’installation consiste à configurer correctement NoCoDB et N8N. Utilisez l’accès SSH pour modifier votre fichier docker-compose.yml selon les standards fournis. Une fois redémarré, accédez à vos interfaces via les URLs définies, typiquement avec des sous-domaines : n8n.votredomaine.com pour N8N et nocodb.votredomaine.com pour NoCoDB.

2. Création d’une base de données et tables dans NoCoDB

Dans l’interface NoCoDB, créez une base de données nouvelle, par exemple « base de test ». Puis créez une table, comme « clients », avec des colonnes personnalisées adaptées à vos données (nom, prénom, âge). Vous pouvez ajouter des descriptions pour chaque champ afin de faciliter la compréhension.

3. Intégration NoCoDB – N8N via API

Pour connecter N8N avec NoCoDB et exploiter vos données :

4. Workflow de récupération et modification de données

Commencez par un nœud manuel pour déclencher le workflow. Ajoutez ensuite un nœud NoCoDB « Get All Rows » pour récupérer toutes les entrées de la table.

Pour modifier une ligne, utilisez un nœud « Update Row » en précisant l’ID et les champs à changer. Attention à bien aligner les noms de colonnes entre NoCoDB et les données JSON dans N8N pour éviter les erreurs.

5. Gestion des erreurs et redémarrage du serveur

Lors de tests, certains workflows peuvent tourner indéfiniment. Si cela arrive, un redémarrage du VPS via l’interface Hostinger ou en SSH règle souvent le problème et remet les services en état stable.

6. Cas d’usage concrets

7. Conseils d’experts

8. Optimisation avancée

Pour maximiser la performance :

Conclusion

Grâce à cette intégration entre NoCoDB et N8N sur un VPS Hostinger, vous disposez d’un outil puissant d’automatisation open-source, parfaitement adapté à une gestion personnalisée et performante de vos données et workflows. Cette solution offre une flexibilité rare, sans coûts supplémentaires, et une totale maîtrise technique.

Pour approfondir vos connaissances, n’hésitez pas à explorer d’autres tutoriels sur l’automatisation avec N8N disponibles sur notre site.

Comment installer NoCoDB et n8n sur un VPS Hostinger avec Docker ?

Vous devez modifier le fichier docker-compose.yml sur le VPS en SSH via le terminal du navigateur, remplacer son contenu par celui fourni, puis redémarrer le service Docker avec les commandes adaptées. Cette méthode permet d’avoir simultanément NoCoDB et n8n disponibles sur le même VPS.

Comment accéder à l’interface NoCoDB après installation ?

L’interface NoCoDB est accessible via un sous-domaine spécifique qui correspond à l’URL de votre VPS Hostinger en remplaçant ‘n8n’ par ‘nocodb’ dans l’adresse. Par exemple, si votre adresse n8n est n8n.vps.hostinger, l’adresse NoCoDB sera nocodb.vps.hostinger.

Comment connecter n8n à NoCoDB pour manipuler les données ?

Dans n8n, vous devez créer une nouvelle authentification (credential) en renseignant l’URL de NoCoDB et un token d’API généré depuis les paramètres de compte de NoCoDB. Ensuite, vous pouvez utiliser les nœuds NoCoDB de n8n pour récupérer, créer, modifier ou supprimer des données dans vos bases et tables.

Quels types d’actions peut-on faire avec les nœuds NoCoDB dans n8n ?

Les nœuds NoCoDB permettent de récupérer plusieurs lignes, récupérer une seule ligne, créer une nouvelle entrée, modifier une entrée existante ou supprimer une entrée selon l’ID. Cela offre une gestion complète des données de votre base NoCoDB via des workflows automatisés.

Comment gérer les clés primaires et colonnes par défaut dans NoCoDB ?

NoCoDB impose d’avoir une colonne clé primaire existante dans chaque table. Supprimer ou modifier cette colonne peut être délicat car l’interface ne propose pas d’option simple pour la retirer. Il est recommandé de garder cette colonne et de gérer les données en fonction.

Que faire si un workflow NoCoDB dans n8n tourne en boucle sans s’arrêter ?

Si un workflow reste en exécution continue, il faut arrêter le workflow puis redémarrer le VPS via l’interface Hostinger. Après quelques minutes d’attente, le serveur sera reconfiguré correctement et les workflows fonctionneront normalement.