--- title: Serveur local description: Gérez le serveur Docker local de Twenty — démarrage, arrêt, mise à niveau, instance de test parallèle et configuration manuelle du SDK. icon: server --- ## Gestion du serveur local Utilisez `yarn twenty docker:*` pour contrôler le conteneur Twenty local : | Commande | Ce que cela fait | | -------------------------------------- | ---------------------------------------------------------- | | `yarn twenty docker:start` | Démarre le serveur (récupère l’image si nécessaire) | | `yarn twenty docker:start 2.2.0` | Démarrer une version spécifique du serveur | | `yarn twenty docker:start --port 3030` | Démarre sur un port personnalisé | | `yarn twenty docker:stop` | Arrête le serveur (préserve les données) | | `yarn twenty docker:status` | Affiche l’URL, la version et les identifiants de connexion | | `yarn twenty docker:logs` | Diffuse les journaux du serveur | | `yarn twenty docker:reset` | Efface les données et repart de zéro | | `yarn twenty docker:upgrade` | Récupère la dernière image `twenty-app-dev` | | `yarn twenty docker:upgrade 2.2.0` | Met à niveau vers une version spécifique | Les données sont conservées entre les redémarrages dans deux volumes Docker (`twenty-app-dev-data` pour PostgreSQL, `twenty-app-dev-storage` pour les fichiers). Utilisez `reset` pour tout effacer. ## Figer la version du serveur Lorsqu’aucune version n’est fournie, `docker:start` résout la version à partir de la plage `engines.twenty` de votre `package.json` — la même plage que le serveur utilise pour la validation lors de l’installation de votre application. Il démarre l’image `twenty-app-dev` la plus récente publiée qui satisfait la plage, et revient à `latest` lorsque le champ est absent ou qu’aucune version publiée ne correspond : ```json filename="package.json" { "engines": { "twenty": ">=2.2.0" } } ``` Passez explicitement une version pour remplacer la plage pour une seule exécution : `yarn twenty docker:start 2.3.0`. Si un conteneur existe déjà avec une version différente, `docker:start` le met à niveau sur place (en recréant le conteneur tout en préservant vos volumes de données). ## Mise à niveau de l’image du serveur `yarn twenty docker:upgrade` récupère la dernière image, compare les empreintes et ne recrée le conteneur que si quelque chose a réellement changé. Les volumes sont conservés — seul le conteneur est remplacé. Si une nouvelle image a été récupérée et que le conteneur était en cours d’exécution, la mise à niveau démarre automatiquement un nouveau conteneur ; exécutez ensuite `yarn twenty docker:start` pour attendre qu’il devienne opérationnel. ```bash filename="Terminal" yarn twenty docker:upgrade # Latest yarn twenty docker:upgrade 2.2.0 # Specific version ``` Vérifiez la version en cours d’exécution avec `yarn twenty docker:status` (elle affiche la valeur de `APP_VERSION` intégrée au conteneur). ## Exécuter une instance de test parallèle Passez `--test` à n’importe quelle commande `docker:*` pour gérer une deuxième instance totalement isolée — utile pour les tests d’intégration ou pour expérimenter sans toucher à vos données de développement principales : | Commande | Ce que cela fait | | ----------------------------------- | ------------------------------------------------- | | `yarn twenty docker:start --test` | Démarre l’instance de test (port 2021 par défaut) | | `yarn twenty docker:stop --test` | L’arrête | | `yarn twenty docker:status --test` | Affiche son statut | | `yarn twenty docker:logs --test` | Diffuse ses journaux | | `yarn twenty docker:reset --test` | Efface ses données | | `yarn twenty docker:upgrade --test` | Met à niveau son image | L’instance de test possède son propre conteneur (`twenty-app-dev-test`), ses volumes (`twenty-app-dev-test-data`, `twenty-app-dev-test-storage`) et sa configuration — elle s’exécute parallèlement à votre instance principale sans conflits. Combinez `--test` avec `--port` pour remplacer le port 2021. ## Configuration manuelle (sans le générateur) Ignorez le générateur si vous ajoutez le SDK à un projet existant : ```bash filename="Terminal" yarn add twenty-sdk twenty-client-sdk ``` Ajoutez le script à `package.json` : ```json filename="package.json" { "scripts": { "twenty": "twenty" } } ``` Vous pouvez maintenant exécuter `yarn twenty dev`, `yarn twenty docker:start` et le reste. N’installez pas `twenty-sdk` globalement — figez-le par projet afin que chaque application utilise sa propre version.