Guides
Auto-héberger avec Docker
Exécutez l'édition communautaire sur votre propre infrastructure.
L'édition communautaire (AGPL-3.0) est une plateforme de chat complète que vous pouvez exécuter partout où Docker fonctionne. Les modules complémentaires entreprise se trouvent dans un dépôt privé séparé, protégé par une clé de licence.
Prérequis
- Docker 24+ et docker compose v2
- 2 vCPU, 4 Go de RAM au minimum (8 Go recommandés)
- Un domaine pointant vers votre serveur (pour le TLS)
Installation
git clone https://github.com/singlink/singlink
cd singlink
cp .env.example .env
# edit .env: AUTH_SECRET, DATABASE_URL, REDIS_URL, S3_*
docker compose up -dPar défaut, cela démarre Postgres (avec pgvector), Redis, MinIO, web, ws et worker. Exécutez docker compose ps pour vérifier que les cinq conteneurs sont sains.
Configuration initiale
docker compose exec web pnpm db:migrate deploy
docker compose exec web pnpm db:seed # optional demo tenantProxy inverse
Placez nginx (ou Caddy) en façade. /api/* et /v1/ws doivent tous deux atteindre la même origine pour partager les cookies. Le point de terminaison WS nécessite des en-têtes upgrade :
location /v1/ws {
proxy_pass http://ws:3001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 86400s;
}Sauvegardes
- Postgres —
pg_dumpquotidien ; cela inclut tout sauf les pièces jointes S3 - S3 / MinIO — utilisez le versionnage de bucket ou
rclone syncvers une autre région - Redis— éphémère (files d'attente), aucune sauvegarde nécessaire ; les jobs sont rejoués au redémarrage
Mises à jour
git fetch && git checkout v0.x.y
docker compose pull
docker compose up -d
docker compose exec web pnpm db:migrate deployLes migrations sont compatibles ascendantes ; nous ne casserons pas une instance en cours d'exécution avec un changement de schema incompatible sans une montée de version majeure.