# Environnement pris en charge

Ce dont draften a besoin sur votre propre serveur, sur quoi il a été testé et à
quoi il se connecte. La marche à suivre de l’installation elle-même se trouve
dans [Installation étape par étape](/fr/admin/installing).

## Serveur

| | Exigence |
|---|---|
| Processeur | **x86-64**. Nous ne construisons pas d’images pour ARM (arm64) aujourd’hui ; nous les construirons lorsqu’un client en aura besoin. |
| Mémoire | **4 Go**. Le web tourne en deux exemplaires pour que les mises à jour se fassent sans interruption. |
| Disque | **20 Go** – les images, deux paquets côte à côte pendant une mise à jour, la base de données et les sauvegardes. Les grandes boîtes mail demandent davantage. |
| Machine | virtuelle ou physique, peu importe. |

## Système d’exploitation et Docker

- **Linux**, n’importe quelle distribution avec **Docker Engine 24** ou plus
  récent et le plugin **compose v2** (commande `docker compose`). L’ancien
  `docker-compose` autonome (v1) ne suffit pas.
- Testé sur **Ubuntu Server**, avec Docker 28 et compose 2.40 comme 5.
- **Docker Desktop** (Windows, macOS) fonctionne, mais uniquement pour un
  essai. En production, nous recommandons un serveur Linux.
- **Podman** n’est pas pris en charge – l’updater a besoin d’un socket
  compatible avec Docker et de `docker compose`.
- **Synology et autres NAS avec Docker** : le script d’installation est écrit
  pour y fonctionner, mais il n’a pas encore tourné sur un vrai NAS.
- Les outils `tar`, `base64` et `sha256sum` (ou `shasum`), présents sur presque
  tous les systèmes.
- Les commandes sont lancées par **root** ou par un utilisateur du groupe
  `docker`. Avec HTTPS directement dans draften, le répertoire d’installation
  est fermé aux autres utilisateurs, d’où `sudo`.

## Réseau : ce qui doit être joignable de l’extérieur

Cela dépend de l’endroit où HTTPS se termine :

- **HTTPS se termine dans draften** – draften écoute sur les ports **443**
  et **80** (le port 80 se contente de rediriger vers HTTPS).
- **HTTPS se termine devant draften** (reverse proxy, tunnel) – draften écoute
  uniquement sur `127.0.0.1:8085` et n’est pas du tout visible de l’extérieur.
  Si le proxy tourne sur une autre machine, ouvrez le port 8085 pour lui seul.

La base de données n’expose aucun port.

## Réseau : à quoi draften se connecte

L’installation elle-même n’a pas besoin d’internet – le paquet apporte toutes
les images et rien n’est téléchargé depuis Docker Hub ni d’ailleurs. En
service, draften se connecte uniquement là où vous l’envoyez :

| Pour quoi | Adresses (port 443 ; IMAP et SMTP selon le serveur) |
|---|---|
| Microsoft 365 | `login.microsoftonline.com`, `graph.microsoft.com` |
| Google Workspace | `accounts.google.com`, `oauth2.googleapis.com`, `openidconnect.googleapis.com`, `www.googleapis.com`, `gmail.googleapis.com` |
| autre boîte mail | votre serveur IMAP |
| modèles de langage | `api.anthropic.com`, `api.openai.com`, ou l’adresse de votre serveur compatible OpenAI – selon les clés que vous saisissez |
| envoi des e-mails (invitations, liens de mot de passe) | votre serveur SMTP, ou `api.brevo.com` |
| connexion à un CRM | `api.hubapi.com` (HubSpot), `app.raynet.cz` (Raynet), `api.flowii.com` (FLOWii) |
| updater : nouvelles versions | `download.draften.ai` – une fois par jour la liste des versions, lors d’une mise à jour le téléchargement du paquet (environ 500 Mo) ; uniquement avec une licence importée |

Aucune télémétrie ni aucun rapport d’erreur ne nous parvient depuis votre
propre installation.

Si vous publiez draften via un **Cloudflare Tunnel**, il vous faut en plus une
connexion vers Cloudflare selon sa documentation et l’image `cloudflared`, que
Docker télécharge depuis Docker Hub – elle n’est pas dans le paquet.

## E-mails et modèles

- **Systèmes de messagerie** : Microsoft 365 (Exchange Online), Google
  Workspace et autres boîtes mail via IMAP. Voir [Microsoft 365](/fr/admin/microsoft-365),
  [Google Workspace](/fr/admin/google-workspace) et
  [Accès aux e-mails](/fr/admin/organisation-mail-access).
- **Modèles de langage** : Anthropic, OpenAI et serveur compatible OpenAI, par
  exemple un modèle local. Voir [Clés API des modèles](/fr/admin/api-keys).

## HTTPS

L’interface doit être joignable en HTTPS. Les trois possibilités – un
certificat directement dans draften, votre reverse proxy ou un Cloudflare
Tunnel – sont décrites à l’étape HTTPS d’[Installation étape par
étape](/fr/admin/installing). Vous vous procurez le certificat vous-même
(auprès d’une autorité de certification ou avec un client ACME).
