Passer au contenu principal
Header
Les conteneurs Docker sont pour l’hébergement en production ou l’auto-hébergement, pour la contribution veuillez consulter le Configuration Locale.

Vue d’ensemble

Ce guide fournit des instructions pas-à-pas pour installer et configurer l’application Twenty à l’aide de Docker Compose. L’objectif est de simplifier le processus et d’éviter les erreurs courantes qui pourraient compromettre votre configuration. Important : Modifiez uniquement les paramètres explicitement mentionnés dans ce guide. Modifier d’autres configurations peut entraîner des problèmes. Consultez les documents Configurer les Variables d’Environnement pour la configuration avancée. Toutes les variables d’environnement doivent être déclarées dans le fichier docker-compose.yml au niveau du serveur et/ou du travailleur, selon la variable.

Exigences du Système

  • RAM : Assurez-vous que votre environnement dispose d’au moins 2 Go de RAM. Une mémoire insuffisante peut provoquer des plantages des processus.
  • Docker & Docker Compose : Assurez-vous que les deux sont installés et à jour.

Option 1 : Script en une seule ligne

Installez la dernière version stable de Twenty avec une seule commande :
bash <(curl -sL https://raw.githubusercontent.com/twentyhq/twenty/main/packages/twenty-docker/scripts/install.sh)
Pour installer une version ou une branche spécifique :
VERSION=vx.y.z BRANCH=branch-name bash <(curl -sL https://raw.githubusercontent.com/twentyhq/twenty/main/packages/twenty-docker/scripts/install.sh)
  • Remplacez x.y.z par le numéro de version désiré.
  • Remplacez nom-branche par le nom de la branche que vous souhaitez installer.

Option 2 : Étapes manuelles

Suivez ces étapes pour une installation manuelle.

Étape 1 : Configurez le Fichier Environnement

  1. Créez le Fichier .env Copiez le fichier d’exemple d’environnement vers un nouveau fichier .env dans votre répertoire de travail :
    curl -o .env https://raw.githubusercontent.com/twentyhq/twenty/refs/heads/main/packages/twenty-docker/.env.example
    
  2. Générez des Jetons Secrets Exécutez la commande suivante pour générer une chaîne aléatoire unique :
    openssl rand -base64 32
    
    Important : Gardez cette valeur secrète / ne la partagez pas.
  3. Mettez à jour le .env Remplacez la valeur de l’espace réservé dans votre fichier .env par le jeton généré :
    APP_SECRET=first_random_string
    
  4. Définissez le Mot de Passe de Postgres Mettez à jour la valeur PG_DATABASE_PASSWORD dans le fichier .env avec un mot de passe fort sans caractères spéciaux.
    PG_DATABASE_PASSWORD=my_strong_password
    

Étape 2 : Obtenez le Fichier Docker Compose

Téléchargez le fichier docker-compose.yml dans votre répertoire de travail :
curl -o docker-compose.yml https://raw.githubusercontent.com/twentyhq/twenty/refs/heads/main/packages/twenty-docker/docker-compose.yml

Étape 3 : Lancer l’Application

Démarrez les conteneurs Docker :
docker compose up -d

Étape 4 : Accéder à l’Application

Si vous hébergez twentyCRM sur votre ordinateur, ouvrez votre navigateur et allez à http://localhost:3000. Si vous l’hébergez sur un serveur, vérifiez que le serveur fonctionne et que tout est en ordre avec
curl http://localhost:3000

Configuration

Exposer Twenty à un Accès Externe

Par défaut, Twenty fonctionne sur localhost au port 3000. Pour y accéder via un domaine externe ou une adresse IP, vous devez configurer le SERVER_URL dans votre fichier .env.

Comprendre SERVER_URL

  • Protocole : Utilisez http ou https selon votre configuration.
    • Utilisez http si vous n’avez pas configuré SSL.
    • Utilisez https si vous avez configuré SSL.
  • Domaine/IP : Il s’agit du nom de domaine ou de l’adresse IP où votre application est accessible.
  • Port : Incluez le numéro de port si vous n’utilisez pas les ports par défaut (80 pour http, 443 pour https).

Exigences SSL

Le SSL (HTTPS) est requis pour que certaines fonctionnalités des navigateurs fonctionnent correctement. Bien que ces fonctionnalités puissent fonctionner lors du développement local (car les navigateurs traitent localhost différemment), une configuration SSL appropriée est nécessaire lors de l’hébergement de Twenty sur un domaine régulier. Par exemple, l’API du presse-papiers pourrait nécessiter un contexte sécurisé - certaines fonctionnalités comme les boutons de copie dans toute l’application pourraient ne pas fonctionner sans HTTPS activé. Nous vous recommandons vivement de mettre en place Twenty derrière un proxy inverse avec terminaison SSL pour une sécurité et une fonctionnalité optimales.

Configurer SERVER_URL

  1. Déterminez Votre URL d’Accès
    • Sans Proxy Inverse (Accès Direct): Si vous accédez directement à l’application sans un proxy inverse :
      SERVER_URL=http://your-domain-or-ip:3000
      
    • Avec Proxy Inverse (Ports Standards): Si vous utilisez un proxy inverse comme Nginx ou Traefik et que vous avez SSL configuré :
      SERVER_URL=https://your-domain-or-ip
      
    • Avec Proxy Inverse (Ports Personnalisés): Si vous utilisez des ports non standards :
      SERVER_URL=https://your-domain-or-ip:custom-port
      
  2. Mettez à jour le Fichier .env Ouvrez votre fichier .env et mettez à jour le SERVER_URL:
    SERVER_URL=http(s)://your-domain-or-ip:your-port
    
    Exemples :
    • Accès direct sans SSL :
      SERVER_URL=http://123.45.67.89:3000
      
    • Accès via domaine avec SSL :
      SERVER_URL=https://mytwentyapp.com
      
  3. Redémarrez l’Application Pour que les changements prennent effet, redémarrez les conteneurs Docker :
    docker compose down
    docker compose up -d
    

Considérations

  • Configuration du Proxy Inverse : Assurez-vous que votre proxy inverse redirige les requêtes vers le port interne correct (3000 par défaut). Configurez la terminaison SSL et tous les en-têtes nécessaires.
  • Paramètres de Pare-feu : Ouvrez les ports nécessaires dans votre pare-feu pour permettre l’accès externe.
  • Cohérence : Le SERVER_URL doit correspondre à la façon dont les utilisateurs accèdent à votre application dans leurs navigateurs.

Persistance

  • Volumes de Données : La configuration de Docker Compose utilise des volumes pour persister les données pour la base de données et le stockage du serveur.
  • Environnements sans État : Si vous déployez dans un environnement sans état (par exemple, certains services cloud), configurez un stockage externe pour persister les données.

Résolution des problèmes

Si vous rencontrez un problème, consultez Dépannage pour des solutions.