i18n - docs translations (#15721)

Created by Github action

Co-authored-by: github-actions <github-actions@twenty.com>
This commit is contained in:
github-actions[bot]
2025-11-08 13:22:29 +01:00
committed by GitHub
co-authored by github-actions
parent f740bac988
commit 4c4eeef5ae
27 changed files with 2432 additions and 38 deletions
@@ -0,0 +1,47 @@
---
title: File d'attente de messages
image: /images/user-guide/emails/emails_header.png
---
<Frame>
<img src="/images/user-guide/emails/emails_header.png" alt="Header" />
</Frame>
Les files d'attente facilitent les opérations asynchrones. Elles peuvent être utilisées pour effectuer des tâches de fond telles que l'envoi d'un e-mail de bienvenue lors de l'enregistrement.
Chaque cas d'utilisation aura sa propre classe de file d'attente étendue à partir de `MessageQueueServiceBase`.
Actuellement, nous ne supportons que `bull-mq`[bull-mq](https://bullmq.io/) comme pilote de file d'attente.
## Étapes pour créer et utiliser une nouvelle file d'attente
1. Ajoutez un nom de file d'attente pour votre nouvelle file sous l'énumération `MESSAGE_QUEUES`.
2. Fournissez l'implémentation de la fabrique de la file d'attente avec le nom de la file comme dépendance.
3. Injectez la file d'attente que vous avez créée dans le module/service requis en utilisant le nom de la file comme dépendance.
4. Ajouter une classe de travailleur avec injection basée sur un jeton comme le producteur.
### Exemple d'utilisation
```ts
class Resolver {
constructor(@Inject(MESSAGE_QUEUES.custom) private queue: MessageQueueService) {}
async onSomeAction() {
//business logic
await this.queue.add(someData);
}
}
//async worker
class CustomWorker {
constructor(@Inject(MESSAGE_QUEUES.custom) private queue: MessageQueueService) {
this.initWorker();
}
async initWorker() {
await this.queue.work(async ({ id, data }) => {
//worker logic
});
}
}
```
@@ -0,0 +1,331 @@
---
title: Configuration Locale
description: "Le guide pour les contributeurs (ou les développeurs curieux) qui souhaitent exécuter Twenty localement."
image: /images/user-guide/fields/field.png
---
<Frame>
<img src="/images/user-guide/fields/field.png" alt="Header" />
</Frame>
## Prérequis
<Tabs>
<Tab title="Linux and MacOS">
Avant de pouvoir installer et utiliser Twenty, assurez-vous d'installer ce qui suit sur votre ordinateur :
- [Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git)
- [Node v24.5.0](https://nodejs.org/en/download)
- [yarn v4](https://yarnpkg.com/getting-started/install)
- [nvm](https://github.com/nvm-sh/nvm/blob/master/README.md)
<Warning>
`npm` ne fonctionnera pas, vous devez utiliser `yarn` à la place. Yarn est maintenant intégré avec Node.js, vous n'avez donc pas besoin de l'installer séparément.
Vous devez uniquement exécuter `corepack enable` pour activer Yarn si vous ne l'avez pas encore fait.
</Warning>
</Tab>
<Tab title="Windows (WSL)">
1. Installer WSL
Ouvrez PowerShell en tant qu'administrateur et exécutez :
```powershell
wsl --install
```
Vous devriez maintenant voir une invite pour redémarrer votre ordinateur. Si ce n'est pas le cas, redémarrez-le manuellement.
Au redémarrage, une fenêtre PowerShell s'ouvrira et installera Ubuntu. Cela peut prendre un peu de temps.
Une invite pour créer un nom d'utilisateur et un mot de passe pour votre installation Ubuntu s'affichera.
2. Installez et configurez git
```bash
sudo apt-get install git
git config --global user.name "Your Name"
git config --global user.email "youremail@domain.com"
```
3. Installez nvm, node.js et yarn
<Warning>
Utilisez `nvm` pour installer la version correcte de `node`. Le fichier `.nvmrc` garantit que tous les contributeurs utilisent la même version.
</Warning>
```bash
sudo apt-get install curl
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash
```
Fermez et rouvrez votre terminal pour utiliser nvm. Ensuite, exécutez les commandes suivantes.
```bash
nvm install # installs recommended node version
nvm use # use recommended node version
corepack enable
```
</Tab>
</Tabs>
---
## Étape 1 : Cloner Git
Dans votre terminal, exécutez la commande suivante.
<Tabs>
<Tab title="SSH (Recommended)">
Si vous n'avez pas encore configuré les clés SSH, vous pouvez apprendre à le faire [ici](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/about-ssh).
```bash
git clone git@github.com:twentyhq/twenty.git
```
</Tab>
<Tab title="HTTPS">
```bash
git clone https://github.com/twentyhq/twenty.git
```
</Tab>
</Tabs>
## Étape 2 : Positionnez-vous à la racine
```bash
cd twenty
```
Vous devez exécuter toutes les commandes des étapes suivantes depuis la racine du projet.
## Étape 3 : Configurez une base de données PostgreSQL
<Tabs>
<Tab title="Linux">
**Option 1 (préférée) :** Pour créer votre base de données localement :
Utilisez le lien suivant pour installer PostgreSQL sur votre machine Linux : [Installation de PostgreSQL](https://www.postgresql.org/download/linux/)
```bash
psql postgres -c "CREATE DATABASE \"default\";" -c "CREATE DATABASE test;"
```
Note : Vous pourriez avoir besoin d'ajouter `sudo -u postgres` à la commande avant `psql` pour éviter des erreurs de permission.
````
**Option 2:** If you have docker installed:
```bash
make postgres-on-docker
```
````
</Tab>
<Tab title="Mac OS">
**Option 1 (préférée) :** Pour créer votre base de données localement avec `brew` :
````
```bash
brew install postgresql@16
export PATH="/opt/homebrew/opt/postgresql@16/bin:$PATH"
brew services start postgresql@16
psql postgres -c "CREATE DATABASE \"default\";" -c "CREATE DATABASE test;"
```
You can verify if the PostgreSQL server is running by executing:
```bash
brew services list
```
The installer might not create the `postgres` user by default when installing
via Homebrew on MacOS. Instead, it creates a PostgreSQL role that matches your macOS
username (e.g., "john").
To check and create the `postgres` user if necessary, follow these steps:
```bash
# Connect to PostgreSQL
psql postgres
or
psql -U $(whoami) -d postgres
```
Once at the psql prompt (postgres=#), run:
```bash
# List existing PostgreSQL roles
\du
```
You'll see output similar to:
```bash
Role name | Attributes | Member of
-----------+-------------+-----------
john | Superuser | {}
```
If you do not see a `postgres` role listed, proceed to the next step.
Create the `postgres` role manually:
```bash
CREATE ROLE postgres WITH SUPERUSER LOGIN;
```
This creates a superuser role named `postgres` with login access.
**Option 2:** If you have docker installed:
```bash
make postgres-on-docker
```
````
</Tab>
<Tab title="Windows (WSL)">
Toutes les étapes suivantes doivent être exécutées dans le terminal WSL (dans votre machine virtuelle)
````
**Option 1:** To provision your Postgresql locally:
Use the following link to install Postgresql on your Linux virtual machine: [Postgresql Installation](https://www.postgresql.org/download/linux/)
```bash
psql postgres -c "CREATE DATABASE \"default\";" -c "CREATE DATABASE test;"
```
Note: You might need to add `sudo -u postgres` to the command before `psql` to avoid permission errors.
**Option 2:** If you have docker installed:
Running Docker on WSL adds an extra layer of complexity.
Only use this option if you are comfortable with the extra steps involved, including turning on [Docker Desktop WSL2](https://docs.docker.com/desktop/wsl).
```bash
make postgres-on-docker
```
````
</Tab>
</Tabs>
Vous pouvez maintenant accéder à la base de données à [localhost:5432](localhost:5432), avec l'utilisateur `postgres` et le mot de passe `postgres`.
## Étape 4 : Configuration d'une base de données Redis (cache)
Twenty nécessite un cache Redis pour offrir la meilleure performance
<Tabs>
<Tab title="Linux">
**Option 1 :** Pour configurer votre Redis localement :
Utilisez le lien suivant pour installer Redis sur votre machine Linux : [Installation de Redis](https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/install-redis-on-linux/)
````
**Option 2:** If you have docker installed:
```bash
make redis-on-docker
```
````
</Tab>
<Tab title="Mac OS">
**Option 1 (préférée) :** Pour configurer votre Redis localement avec `brew` :
```bash
brew install redis
```
Démarrez votre serveur redis :
```brew services start redis```
````
**Option 2:** If you have docker installed:
```bash
make redis-on-docker
```
````
</Tab>
<Tab title="Windows (WSL)">
**Option 1 :** Pour configurer votre Redis localement :
Utilisez le lien suivant pour installer Redis sur votre machine virtuelle Linux : [Installation de Redis](https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/install-redis-on-linux/)
````
**Option 2:** If you have docker installed:
```bash
make redis-on-docker
```
````
</Tab>
</Tabs>
Si vous avez besoin d'une interface graphique cliente, nous recommandons [redis insight](https://redis.io/insight/) (version gratuite disponible)
## Étape 5 : Configurer les variables d'environnement
Utilisez des variables d'environnement ou des fichiers `.env` pour configurer votre projet. Plus d'informations [ici](https://docs.twenty.com/developers/self-hosting/setup)
Copiez les fichiers `.env.example` dans `/front` et `/server` :
```bash
cp ./packages/twenty-front/.env.example ./packages/twenty-front/.env
cp ./packages/twenty-server/.env.example ./packages/twenty-server/.env
```
## Étape 6 : Installation des dépendances
Pour construire le serveur Twenty et injecter des données dans votre base de données, exécutez la commande suivante :
```bash
yarn
```
Notez que `npm` ou `pnpm` ne fonctionneront pas
## Étape 7 : Exécution du projet
<Tabs>
<Tab title="Linux">
Selon votre distribution Linux, le serveur Redis peut être démarré automatiquement.
Sinon, vérifiez le [guide d'installation de Redis](https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/) pour votre distribution.
</Tab>
<Tab title="Mac OS">
Redis devrait déjà être en cours d'exécution. Si ce n'est pas le cas, exécutez :
```bash
brew services start redis
```
</Tab>
<Tab title="Windows (WSL)">
Selon votre distribution Linux, le serveur Redis peut être démarré automatiquement.
Sinon, vérifiez le [guide d'installation de Redis](https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/) pour votre distribution.
</Tab>
</Tabs>
Configurez votre base de données avec la commande suivante :
```bash
npx nx database:reset twenty-server
```
Démarrez le serveur, le worker et les services frontend :
```bash
npx nx start twenty-server
npx nx worker twenty-server
npx nx start twenty-front
```
Alternativement, vous pouvez démarrer tous les services en même temps :
```bash
npx nx start
```
## Étape 8 : Utiliser Twenty
**Frontend**
Le frontend de Twenty sera en cours d'exécution à [http://localhost:3001](http://localhost:3001).
Vous pouvez vous connecter en utilisant le compte démo par défaut : `tim@apple.dev` (mot de passe : `tim@apple.dev`)
**Backend**
- Le serveur de Twenty sera en fonctionnement à [http://localhost:3000](http://localhost:3000)
- L'API GraphQL est accessible à [http://localhost:3000/graphql](http://localhost:3000/graphql)
- L'API REST est joignable à [http://localhost:3000/rest](http://localhost:3000/rest)
## Résolution des problèmes
Si vous rencontrez un problème, consultez [Dépannage](https://docs.twenty.com/developers/self-hosting/troubleshooting) pour des solutions.
@@ -0,0 +1,251 @@
---
title: Installation
image: /images/user-guide/table-views/table.png
---
<Frame>
<img src="/images/user-guide/table-views/table.png" alt="Header" />
</Frame>
import OptionTable from '@site/src/theme/OptionTable'
# Gestion de la configuration
<Warning>
**Première installation ?** Suivez le [Guide d'installation de Docker Compose](https://docs.twenty.com/developers/self-hosting/docker-compose) pour faire fonctionner Twenty, puis revenez ici pour la configuration.
</Warning>
Twenty offre **deux modes de configuration** pour répondre à différents besoins de déploiement :
**Accès au panneau d'administration :** Seuls les utilisateurs avec des privilèges d'administrateur (`canAccessFullAdminPanel: true`) peuvent accéder à l'interface de configuration.
## 1. Configuration du panneau d'administration (par défaut)
```bash
IS_CONFIG_VARIABLES_IN_DB_ENABLED=true # default
```
**La plupart des configurations se fait via l'interface utilisateur** après l'installation :
1. Accédez à votre instance Twenty (généralement `http://localhost:3000`)
2. Allez dans **Paramètres / Panneau dadministration / Variables de configuration**
3. Configurez les intégrations, les e-mails, le stockage et plus encore
4. Les modifications prennent effet immédiatement (dans les 15 secondes pour les déploiements multi-conteneurs)
<Warning>
**Déploiements multi-conteneurs :** En utilisant la configuration de la base de données (`IS_CONFIG_VARIABLES_IN_DB_ENABLED=true`), les conteneurs serveur et travailleur lisent à partir de la même base de données. Les modifications du panneau d'administration affectent les deux automatiquement, éliminant le besoin de dupliquer les variables d'environnement entre les conteneurs (sauf pour les variables d'infrastructure).
</Warning>
**Ce que vous pouvez configurer via le panneau d'administration :**
- **Authentification** - Google/Microsoft OAuth, paramètres de mot de passe
- **E-mail** - Paramètres SMTP, modèles, vérification
- **Stockage** - Configuration S3, chemins de stockage local
- **Intégrations** - Gmail, Google Agenda, services Microsoft
- **Workflow & Limitation de débit** - Limites d'exécution, limitation de l'API
- **Et bien plus encore...**
![Variables de configuration du panneau d'administration](/images/user-guide/setup/admin-panel-config-variables.png)
<Warning>
Chaque variable est documentée avec des descriptions dans votre panneau d'administration sous **Paramètres → Panneau d'administration → Variables de configuration**.
Certains paramètres d'infrastructure comme les connexions de base de données (`PG_DATABASE_URL`), les URL du serveur (`SERVER_URL`), et les secrets d'application (`APP_SECRET`) ne peuvent être configurés que via le fichier `.env`.
[Référence technique complète →](https://github.com/twentyhq/twenty/blob/main/packages/twenty-server/src/engine/core-modules/twenty-config/config-variables.ts) </Warning>
## 2. Configuration réservée à l'environnement
```bash
IS_CONFIG_VARIABLES_IN_DB_ENABLED=false
```
**Toute la configuration est gérée via les fichiers `.env` :**
1. Définissez `IS_CONFIG_VARIABLES_IN_DB_ENABLED=false` dans votre fichier `.env`
2. Ajoutez toutes les variables de configuration à votre fichier `.env`
3. Redémarrez les conteneurs pour que les modifications prennent effet
4. Le panneau d'administration affichera les valeurs actuelles mais ne pourra pas les modifier
## Intégration Gmail & Google Agenda
### Créer un projet Google Cloud
1. Allez dans [Google Cloud Console](https://console.cloud.google.com/)
2. Créez un nouveau projet ou sélectionnez-en un existant
3. Activez ces API :
- [API Gmail](https://console.cloud.google.com/apis/library/gmail.googleapis.com)
- [API Google Agenda](https://console.cloud.google.com/apis/library/calendar-json.googleapis.com)
- [API People](https://console.cloud.google.com/apis/library/people.googleapis.com)
### Configurez OAuth
1. Allez dans [Identifiants](https://console.cloud.google.com/apis/credentials)
2. Créez un identifiant client OAuth 2.0
3. Ajoutez ces URI de redirection :
- `https://<votre-domaine>/auth/google/redirect` (pour le SSO)
- `https://<votre-domaine>/auth/google-apis/get-access-token` (pour les intégrations)
### Configurez dans Twenty
1. Allez dans **Paramètres → Panneau dadministration → Variables de configuration**
2. Retrouvez la section **Google Auth**
3. Définissez ces variables :
- `MESSAGING_PROVIDER_GMAIL_ENABLED=true`
- `CALENDAR_PROVIDER_GOOGLE_ENABLED=true`
- `AUTH_GOOGLE_CLIENT_ID=<client-id>`
- `AUTH_GOOGLE_CLIENT_SECRET=<client-secret>`
- `AUTH_GOOGLE_CALLBACK_URL=https://<votre-domaine>/auth/google/redirect`
- `AUTH_GOOGLE_APIS_CALLBACK_URL=https://<votre-domaine>/auth/google-apis/get-access-token`
<Warning>
**Mode réservé à l'environnement :** Si vous définissez `IS_CONFIG_VARIABLES_IN_DB_ENABLED=false`, ajoutez ces variables à votre fichier `.env` à la place.
</Warning>
**Scopes requis** (configurés automatiquement) :
[Voir le code source pertinent](https://github.com/twentyhq/twenty/blob/main/packages/twenty-server/src/engine/core-modules/auth/utils/get-google-apis-oauth-scopes.ts#L4-L10)
- `https://www.googleapis.com/auth/calendar.events`
- `https://www.googleapis.com/auth/gmail.readonly`
- `https://www.googleapis.com/auth/profile.emails.read`
### Si votre application est en mode test
Si votre application est en mode test, vous devez ajouter des utilisateurs test à votre projet.
Sous [Écran de consentement OAuth](https://console.cloud.google.com/apis/credentials/consent), ajoutez vos utilisateurs test à la section "Utilisateurs test".
## Intégration Microsoft 365
<Warning>
Les utilisateurs doivent avoir une [licence Microsoft 365](https://admin.microsoft.com/Adminportal/Home) pour pouvoir utiliser les API Calendrier et Messagerie. Ils ne pourront pas synchroniser leur compte sur Twenty sans cela.
</Warning>
### Créez un projet dans Microsoft Azure
Vous devrez créer un projet dans [Microsoft Azure](https://portal.azure.com/#view/Microsoft_AAD_IAM/AppGalleryBladeV2) et obtenir les identifiants.
### Activez les API
Sur la console Microsoft Azure, activez les API suivantes dans "Autorisations" :
- Microsoft Graph : Mail.ReadWrite
- Microsoft Graph : Mail.Send
- Microsoft Graph : Calendars.Read
- Microsoft Graph : User.Read
- Microsoft Graph : openid
- Microsoft Graph : email
- Microsoft Graph : profile
- Microsoft Graph : offline_access
Remarque : "Mail.ReadWrite" et "Mail.Send" ne sont obligatoires que si vous souhaitez envoyer des e-mails en utilisant nos actions de flux de travail. Vous pouvez utiliser "Mail.Read" à la place si vous souhaitez uniquement recevoir des e-mails.
### URI de redirection autorisées
Vous devez ajouter les URI de redirection suivantes à votre projet :
- `https://<votre-domaine>/auth/microsoft/redirect` si vous souhaitez utiliser Microsoft SSO
- `https://<votre-domaine>/auth/microsoft-apis/get-access-token`
### Configurez dans Twenty
1. Allez dans **Paramètres → Panneau dadministration → Variables de configuration**
2. Retrouvez la section **Microsoft Auth**
3. Définissez ces variables :
- `MESSAGING_PROVIDER_MICROSOFT_ENABLED=true`
- `CALENDAR_PROVIDER_MICROSOFT_ENABLED=true`
- `AUTH_MICROSOFT_ENABLED=true`
- `AUTH_MICROSOFT_CLIENT_ID=<client-id>`
- `AUTH_MICROSOFT_CLIENT_SECRET=<client-secret>`
- `AUTH_MICROSOFT_CALLBACK_URL=https://<votre-domaine>/auth/microsoft/redirect`
- `AUTH_MICROSOFT_APIS_CALLBACK_URL=https://<votre-domaine>/auth/microsoft-apis/get-access-token`
<Warning>
**Mode réservé à l'environnement :** Si vous définissez `IS_CONFIG_VARIABLES_IN_DB_ENABLED=false`, ajoutez ces variables à votre fichier `.env` à la place.
</Warning>
### Configurer les scopes
[Voir le code source pertinent](https://github.com/twentyhq/twenty/blob/main/packages/twenty-server/src/engine/core-modules/auth/utils/get-microsoft-apis-oauth-scopes.ts#L2-L9)
- 'openid'
- 'email'
- 'profil'
- 'offline_access'
- 'Mail.ReadWrite'
- 'Mail.Send'
- 'Calendars.Read'
### Si votre application est en mode test
Si votre application est en mode test, vous devez ajouter des utilisateurs test à votre projet.
Ajoutez vos utilisateurs test à la section "Utilisateurs et groupes".
## Tâches en arrière-plan pour Calendrier & Messagerie
Après avoir configuré les intégrations Gmail, Google Agenda ou Microsoft 365, vous devez démarrer les tâches en arrière-plan qui synchronisent les données.
Enregistrez les emplois récurrents suivants dans votre conteneur de travailleur :
```bash
# from your worker container
yarn command:prod cron:messaging:messages-import
yarn command:prod cron:messaging:message-list-fetch
yarn command:prod cron:calendar:calendar-event-list-fetch
yarn command:prod cron:calendar:calendar-events-import
yarn command:prod cron:messaging:ongoing-stale
yarn command:prod cron:calendar:ongoing-stale
yarn command:prod cron:workflow:automated-cron-trigger
```
## Configuration des Emails
1. Allez dans **Paramètres → Panneau dadministration → Variables de configuration**
2. Retrouvez la section **Email**
3. Configurez vos paramètres SMTP :
<ArticleTabs label1="Gmail" label2="Office365" label3="Smtp4dev">
<ArticleTab>
Vous devrez créer un [mot de passe d'application](https://support.google.com/accounts/answer/185833).
- EMAIL_DRIVER=smtp
- EMAIL_SMTP_HOST=smtp.gmail.com
- EMAIL_SMTP_PORT=465
- EMAIL_SMTP_USER=gmail_email_address
- EMAIL_SMTP_PASSWORD='gmail_app_password'
</ArticleTab>
<ArticleTab>
Gardez à l'esprit que si vous avez activé la validation en deux étapes (2FA), vous devrez mettre en place un [mot de passe d'application](https://support.microsoft.com/en-us/account-billing/manage-app-passwords-for-two-step-verification-d6dc8c6d-4bf7-4851-ad95-6d07799387e9).
- EMAIL_DRIVER=smtp
- EMAIL_SMTP_HOST=smtp.office365.com
- EMAIL_SMTP_PORT=587
- EMAIL_SMTP_USER=office365_email_address
- EMAIL_SMTP_PASSWORD='office365_password'
</ArticleTab>
<ArticleTab>
**smtp4dev** est un serveur SMTP factice pour le développement et les tests.
- Exécutez l'image smtp4dev : `docker run --rm -it -p 8090:80 -p 2525:25 rnwood/smtp4dev`
- Accédez à l'interface utilisateur smtp4dev ici : [http://localhost:8090](http://localhost:8090)
- Définissez les variables suivantes :
- EMAIL_DRIVER=smtp
- EMAIL_SMTP_HOST=localhost
- EMAIL_SMTP_PORT=2525
</ArticleTab>
</ArticleTabs>
<Warning>
**Mode réservé à l'environnement :** Si vous définissez `IS_CONFIG_VARIABLES_IN_DB_ENABLED=false`, ajoutez ces variables à votre fichier `.env` à la place.
</Warning>
@@ -0,0 +1,226 @@
---
title: Résolution des problèmes
image: /images/user-guide/what-is-twenty/20.png
---
<Frame>
<img src="/images/user-guide/what-is-twenty/20.png" alt="Header" />
</Frame>
## Résolution des problèmes
Si vous rencontrez un problème lors de la configuration de l'environnement pour le développement, la mise à niveau de votre instance ou l'auto-hébergement, voici quelques solutions pour les problèmes courants.
### Auto-hébergement
#### La première installation entraîne l'erreur `l'authentification du mot de passe a échoué pour l'utilisateur "postgres"`
🚨 **IMPORTANT : Cette solution est UNIQUEMENT pour les nouvelles installations** 🚨
Si vous avez une instance Twenty existante avec des données de production, **NE SUIVEZ PAS** ces étapes, car elles supprimeront définitivement votre base de données !
Lors de l'installation de Twenty pour la première fois, vous pouvez vouloir changer le mot de passe par défaut de la base de données.
Le mot de passe que vous définissez lors de la première installation est stocké de façon permanente dans le volume de la base de données. Si vous essayez ensuite de changer ce mot de passe dans votre configuration sans supprimer l'ancien volume, vous obtiendrez des erreurs d'authentification car la base de données utilise toujours le mot de passe original.
⚠️ AVERTISSEMENT : Les étapes suivantes SUPPRIMERONT DÉFINITIVEMENT toutes les données de la base de données ! ⚠️
N'avancez que s'il s'agit d'une nouvelle installation sans données importantes.
Pour mettre à jour le `PG_DATABASE_PASSWORD`, vous devez :
```sh
# Update the PG_DATABASE_PASSWORD in .env
docker compose down --volumes
docker compose up -d
```
#### Retours à la ligne CR trouvés [Windows]
Cela est dû aux caractères de saut de ligne de Windows et à la configuration de git. Essayez de lancer :
```
git config --global core.autocrlf false
```
Ensuite, supprimez le dépôt et clonez-le de nouveau.
#### Schéma de métadonnées manquant
Pendant l'installation de Twenty, vous devez approvisionner votre base de données postgres avec les bons schémas, extensions et utilisateurs.
Si vous réussissez cet approvisionnement, vous devriez avoir des schémas `default` et `metadata` dans votre base de données.
Sinon, assurez-vous de ne pas avoir plus d'une instance postgres fonctionnant sur votre ordinateur.
#### Impossible de trouver le module 'twenty-emails' ou les déclarations de type correspondantes.
Vous devez construire le package `twenty-emails` avant de lancer l'initialisation de la base de données avec `npx nx run twenty-emails:build`
#### Package twenty-x manquant
Assurez-vous d'exécuter yarn dans le répertoire racine, puis d'exécuter `npx nx server:dev twenty-server`. Si cela ne fonctionne toujours pas, essayez de construire le package manquant manuellement.
#### Lint à l'enregistrement ne fonctionne pas
Cela devrait fonctionner directement avec l'extension eslint installée. Si cela ne fonctionne pas, essayez d'ajouter ceci aux paramètres de votre vscode (dans le champ du conteneur de développement) :
```
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
}
```
#### Pendant l'exécution de `npx nx start` ou `npx nx start twenty-front`, une erreur de mémoire est renvoyée
Dans `packages/twenty-front/.env`, décommentez `VITE_DISABLE_TYPESCRIPT_CHECKER=true` et `VITE_DISABLE_ESLINT_CHECKER=true` pour désactiver les vérifications en arrière-plan, réduisant ainsi la quantité de RAM nécessaire.
**Si cela ne fonctionne pas :**
Lancez uniquement les services dont vous avez besoin, au lieu de `npx nx start`. Par exemple, si vous travaillez sur le serveur, lancez seulement `npx nx worker twenty-server`
**Si cela ne fonctionne pas :**
Si vous avez essayé de lancer uniquement `npx nx run twenty-server:start` sur WSL et que cela échoue avec l'erreur de mémoire ci-dessous :
`ERREUR FATALE : Les compactages inefficaces près de la limite du tas Allocation échouée - tas JavaScript sans mémoire`
Une solution de contournement consiste à exécuter la commande ci-dessous dans le terminal ou à l'ajouter au profil .bashrc pour la configurer automatiquement :
`export NODE_OPTIONS="--max-old-space-size=8192"`
L'option --max-old-space-size=8192 fixe une limite supérieure de 8 Go pour le tas Node.js ; l'utilisation s'adapte à la demande de l'application.
Référence : https://stackoverflow.com/questions/56982005/where-do-i-set-node-options-max-old-space-size-2048
**Si cela ne fonctionne pas :**
Enquêter sur les processus qui consomment le plus de RAM sur votre machine. Chez Twenty, nous avons remarqué que certaines extensions de VScode consommaient beaucoup de RAM, nous les désactivons donc temporairement.
**Si cela ne fonctionne pas :**
Redémarrer votre machine aide à nettoyer les processus fantômes.
#### Pendant l'exécution de `npx nx start`, il y a des [0] et [1] étranges dans les journaux
C'est attendu car la commande `npx nx start` exécute plus de commandes en arrière-plan
#### Aucun e-mail n'est envoyé
La plupart du temps, c'est parce que le `worker` ne fonctionne pas en arrière-plan. Essayez de lancer
```
npx nx worker twenty-server
```
#### Impossible de connecter mon compte Microsoft 365
La plupart du temps, c'est parce que votre administrateur n'a pas activé la licence Microsoft 365 pour votre compte. Vérifiez [https://admin.microsoft.com/](https://admin.microsoft.com/Adminportal/Home).
Si vous avez un code d'erreur `AADSTS50020`, cela signifie probablement que vous utilisez un compte personnel Microsoft. Cela n'est pas encore pris en charge. Plus d'informations [ici](https://learn.microsoft.com/fr-fr/troubleshoot/entra/entra-id/app-integration/error-code-aadsts50020-user-account-identity-provider-does-not-exist)
#### Des avertissements apparaissent dans la console pendant l'exécution de `yarn`
Les avertissements informent du tirage de dépendances supplémentaires qui ne sont pas explicitement spécifiées dans `package.json`, donc tant qu'aucune erreur bloquante n'apparaît, tout devrait fonctionner comme prévu.
#### Lorsque l'utilisateur accède à la page de connexion, une erreur concernant des utilisateurs non autorisés essayant d'accéder à l'espace de travail apparaît dans les journaux
C'est attendu car l'utilisateur est non autorisé lorsqu'il est déconnecté puisque son identité n'est pas vérifiée.
#### Comment vérifier si votre worker fonctionne ?
- Allez sur [webhook-test.com](https://webhook-test.com/) et copiez **Votre URL Webhook Unique**.
<div style={{textAlign: 'center'}}>
<img src="/images/docs/developers/self-hosting/webhook-test.jpg" alt="Webhook test" />
</div>
- Ouvrez votre application Twenty, naviguez jusqu'à `/settings`, et activez le bouton **Avancé** en bas à gauche de l'écran.
- Créez un nouveau webhook.
- Collez **Votre URL Webhook Unique** dans le champ **URL de l'Endpoint** de Twenty. Réglez les **Filtres** sur `Sociétés` et `Créé`.
<div style={{textAlign: 'center'}}>
<img src="/images/docs/developers/self-hosting/webhook-settings.jpg" alt="Webhook settings" />
</div>
- Accédez à `/objects/companies` et créez un nouvel enregistrement de société.
- Retournez sur [webhook-test.com](https://webhook-test.com/) et vérifiez si une nouvelle **requête POST** a été reçue.
<div style={{textAlign: 'center'}}>
<img src="/images/docs/developers/self-hosting/webhook-test-result.jpg" alt="Webhook test result" />
</div>
- Si une **requête POST** est reçue, votre worker fonctionne avec succès. Sinon, vous devez résoudre les problèmes de votre worker.
#### Le front-end échoue à démarrer et renvoie l'erreur TS5042 : L'option 'project' ne peut pas être mélangée avec les fichiers sources en ligne de commande
Commentez le plugin de vérification dans `packages/twenty-ui/vite-config.ts` comme dans l'exemple ci-dessous
```
plugins: [
react({ jsxImportSource: '@emotion/react' }),
tsconfigPaths(),
svgr(),
dts(dtsConfig),
// checker(checkersConfig),
wyw({
include: [
'**/OverflowingTextWithTooltip.tsx',
'**/Chip.tsx',
'**/Tag.tsx',
'**/Avatar.tsx',
'**/AvatarChip.tsx',
],
babelOptions: {
presets: ['@babel/preset-typescript', '@babel/preset-react'],
},
}),
],
```
#### Panneau d'administration inaccessible
Exécutez `UPDATE core."user" SET "canAccessFullAdminPanel" = TRUE WHERE email = 'vous@votredomaine.com';` dans le conteneur de base de données pour obtenir l'accès au panneau d'administration.
### Docker compose en un clic
#### Impossible de se connecter
Si vous ne pouvez pas vous connecter après la configuration :
1. Exécutez les commandes suivantes :
```bash
docker exec -it twenty-server-1 yarn
docker exec -it twenty-server-1 npx nx database:reset --configuration=no-seed
```
2. Redémarrez les conteneurs Docker :
```bash
docker compose down
docker compose up -d
```
Notez que la commande database:reset effacera complètement votre base de données et la recréera à partir de zéro.
#### Problèmes de connexion derrière un proxy inverse
Si vous exécutez Twenty derrière un proxy inverse et rencontrez des problèmes de connexion :
1. **Vérifiez SERVER_URL :**
Assurez-vous que `SERVER_URL` dans votre fichier `.env` correspond à l'URL d'accès externe, incluant `https` si SSL est activé.
2. **Vérifiez les paramètres du proxy inverse :**
- Confirmez que votre proxy inverse transfère correctement les requêtes au serveur Twenty.
- Assurez-vous que les en-têtes comme `X-Forwarded-For` et `X-Forwarded-Proto` sont correctement configurés.
3. **Redémarrez les services :**
Après avoir apporté des modifications, redémarrez à la fois le proxy inverse et les conteneurs Twenty.
#### Erreur lors du téléchargement d'une image - permission refusée
Changer la propriété du dossier de données sur l'hôte de root à un autre utilisateur et groupe résout ce problème.
## Obtenir de l'aide
Si vous rencontrez des problèmes non couverts par ce guide :
- Vérifiez les journaux :
Consultez les journaux de conteneur pour les messages d'erreur :
```bash
docker compose logs
```
- Support communautaire :
Contactez la [communauté Twenty](https://github.com/twentyhq/twenty/issues) ou les [canaux de support](https://discord.gg/cx5n4Jzs57) pour obtenir de l'aide.