---
title: "Auto-hébergement · Docs · SourceAnt"
description: "Documentation : déployez l'API de revue SourceAnt sur votre propre serveur à l'aide de l'image Docker publiée."
url: "https://sourceant.ai/fr/docs/self-hosting/"
---

# Auto-hébergement

Exécutez l'API de revue SourceAnt sur votre propre serveur à l'aide de l'image Docker publiée. Ce déploiement est uniquement une API. Vous fournissez la base de données, les identifiants de modèle et l'application GitHub.

Pour explorer le code et les connaissances, gérer les compétences et réviser les modifications sur votre machine, suivez [Configuration locale](https://sourceant.ai/fr/docs/local-setup).

## Préparez votre serveur

Vous avez besoin de Docker, d'une base de données PostgreSQL accessible depuis les conteneurs et d'une adresse HTTPS pour les livraisons GitHub. Conservez l'API et les workers sur la même version d'image et la même configuration de base de données.

Créez un fichier `.env` avec votre connexion à la base de données, votre clé de modèle et de fournisseur, les identifiants de votre application GitHub, le secret du webhook et le secret JWT. Utilisez le [modèle d'environnement](https://github.com/sourceant/sourceant/blob/main/.env.example) comme référence et remplacez ses valeurs d'exemple.

## Démarrez l'API

L'image publiée est `ghcr.io/sourceant/sourceant`. Ces commandes utilisent `latest`; épinglez une balise d'image publiée pour un déploiement de production reproductible. Exécutez-les depuis le répertoire contenant votre `.env` et la clé privée de l'application GitHub.

```
docker pull ghcr.io/sourceant/sourceant:latest

docker run -d --name sourceant-api \
  --env-file .env \
  -e QUEUE_MODE=database \
  -e GITHUB_APP_PRIVATE_KEY_PATH=/app/private-key.pem \
  -v "$PWD/private-key.pem:/app/private-key.pem:ro" \
  -p 127.0.0.1:8000:8000 \
  ghcr.io/sourceant/sourceant:latest
```

L'image applique les migrations de base de données avant de démarrer l'API sur le port 8000. Assurez-vous que l'utilisateur du conteneur peut lire la clé privée montée.

```
docker logs sourceant-api
curl http://127.0.0.1:8000/
```

Vérifiez que l'API répond avant de démarrer les workers. Placez votre proxy inverse HTTPS devant le port 8000. La référence de l'API est disponible à l'adresse `/docs`.

## Démarrez le worker de revue

Avec la file d'attente SQL, exécutez un worker avec la même base de données et les mêmes identifiants :

```
docker run -d --name sourceant-worker \
  --env-file .env \
  -e QUEUE_MODE=database \
  -e GITHUB_APP_PRIVATE_KEY_PATH=/app/private-key.pem \
  -v "$PWD/private-key.pem:/app/private-key.pem:ro" \
  --entrypoint sourceant \
  ghcr.io/sourceant/sourceant:latest work --lane interactive
```

Exécutez des workers pour les files d'attente `batch` et `background` selon les besoins pour les autres travaux en attente. Consultez la [référence de déploiement](https://github.com/sourceant/sourceant/blob/main/docs/deployment.md) pour la configuration et les options des workers.

## Connectez votre application GitHub

1.  Créez une application GitHub pour ce serveur.
2.  Définissez son URL de webhook sur `https://your-domain.com/api/prs/github-webhook` et son secret de webhook sur la valeur de `GITHUB_SECRET`.
3.  Accordez **Contenu : lecture seule** et **Pull requests : lecture et écriture**, et abonnez-vous aux événements **Pull request** .
4.  Définissez `GITHUB_APP_ID` et `GITHUB_APP_CLIENT_ID` dans votre fichier d'environnement, et montez la clé privée de l'application dans les deux conteneurs.
5.  Installez l'application sur les dépôts que vous souhaitez réviser.

Appliquez la configuration de l'application avant de démarrer les conteneurs. Ouvrez une pull request pour vérifier la livraison et le traitement, à l'aide de l'historique des livraisons de l'application et des journaux des workers. Consultez [Configuration de l'application GitHub](https://github.com/sourceant/sourceant/blob/main/docs/github-app.md) pour la configuration complète.
