Comment auto-héberger Docmost sur un VPS (Guide 2026)
Docmost est une plateforme open-source de documentation collaborative et wiki. L’héberger sur un VPS vous donne une propriété totale des données, un domaine personnalisé et aucun frais par siège. Ce guide couvre l’installation complète — d’un VPS Ubuntu vierge à une instance Docmost opérationnelle avec SSL et Nginx.
Prérequis
Avant de commencer, vous avez besoin de :
- Un VPS sous Ubuntu 22.04 ou 24.04 (au minimum 1 vCPU, 2 Go RAM recommandés)
- Un domaine ou sous-domaine pointant vers l’IP de votre VPS (ex.
docs.votredomaine.fr) - Accès root ou sudo au serveur
- Docker et Docker Compose installés
Fournisseurs VPS recommandés :
- Hetzner Cloud — 4,15 €/mois, 2 vCPU, 4 Go RAM (meilleur rapport qualité-prix)
- Contabo VPS — 5,99 €/mois, 4 vCPU, 8 Go RAM, 200 Go NVMe
- DigitalOcean — 6 $/mois, idéal pour les débutants
Étape 1 : Configurer votre VPS
Démarrez un VPS Ubuntu 22.04 et connectez-vous en root :
ssh root@ip-de-votre-serveur
Créez un utilisateur non-root avec les privilèges sudo (recommandé) :
adduser deploy
usermod -aG sudo deploy
Étape 2 : Installer Docker et Docker Compose
# Mettre à jour le système
apt update && apt upgrade -y
# Installer Docker
curl -fsSL https://get.docker.com | sh
# Ajouter l'utilisateur au groupe docker
usermod -aG docker deploy
# Vérifier l'installation
docker --version
docker compose version
Déconnectez-vous et reconnectez-vous pour que les changements de groupe prennent effet.
Étape 3 : Créer le répertoire Docmost
mkdir -p /opt/docmost
cd /opt/docmost
Étape 4 : Écrire le fichier Docker Compose
Créez /opt/docmost/docker-compose.yml :
version: '3'
services:
docmost:
image: docmost/docmost:latest
ports:
- "3000:3000"
environment:
DATABASE_URL: postgresql://docmost:password@db:5432/docmost
REDIS_URL: redis://redis:6379
depends_on:
- db
- redis
restart: unless-stopped
db:
image: postgres:16
environment:
POSTGRES_USER: docmost
POSTGRES_PASSWORD: password
POSTGRES_DB: docmost
volumes:
- pg_data:/var/lib/postgresql/data
restart: unless-stopped
redis:
image: redis:7
volumes:
- redis_data:/data
restart: unless-stopped
volumes:
pg_data:
redis_data:
Note de sécurité : Remplacez
passwordpar un mot de passe fort et généré aléatoirement avant le déploiement.
Étape 5 : Démarrer Docmost
cd /opt/docmost
docker compose up -d
Vérifiez que tous les conteneurs tournent :
docker compose ps
Vous devriez voir docmost, db et redis tous avec le statut running. En cas d’erreur, consultez les logs :
docker compose logs docmost
Étape 6 : Installer et configurer Nginx
apt install nginx -y
Créez /etc/nginx/sites-available/docmost :
server {
listen 80;
server_name docs.votredomaine.fr;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name docs.votredomaine.fr;
ssl_certificate /etc/letsencrypt/live/docs.votredomaine.fr/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/docs.votredomaine.fr/privkey.pem;
client_max_body_size 100M;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 86400;
}
}
Activez le site :
ln -s /etc/nginx/sites-available/docmost /etc/nginx/sites-enabled/
nginx -t
systemctl reload nginx
Étape 7 : Obtenir un certificat SSL
apt install certbot python3-certbot-nginx -y
certbot --nginx -d docs.votredomaine.fr
Suivez les instructions. Certbot met à jour automatiquement votre configuration Nginx et configure le renouvellement automatique.
Étape 8 : Configurer le pare-feu
ufw allow OpenSSH
ufw allow 'Nginx Full'
ufw enable
N’exposez pas le port 3000 directement — tout le trafic doit passer par Nginx.
Étape 9 : Première connexion et configuration du workspace
- Ouvrez
https://docs.votredomaine.frdans votre navigateur - L’assistant de configuration Docmost apparaît à la première visite
- Créez votre compte administrateur (email + mot de passe)
- Nommez votre workspace
- Créez votre premier espace (ex. « Ingénierie », « Produit », « RH »)
- Invitez les membres de l’équipe via le panneau Paramètres
Mettre à jour Docmost
Pour récupérer la dernière image et redémarrer :
cd /opt/docmost
docker compose pull
docker compose up -d
Stratégie de sauvegarde
Sauvegardez régulièrement les données PostgreSQL :
docker exec docmost-db-1 pg_dump -U docmost docmost > backup_$(date +%Y%m%d).sql
Sauvegardez également le volume Docker sous /var/lib/docker/volumes/docmost_pg_data.
Résolution de problèmes
| Problème | Solution |
|---|---|
| Conteneurs qui ne démarrent pas | Vérifiez docker compose logs pour les erreurs |
| 502 Bad Gateway | Docmost s’initialise peut-être encore — attendez 30 secondes |
| Erreurs WebSocket | Vérifiez les en-têtes Upgrade et Connection dans Nginx |
| Connexion DB refusée | Vérifiez que DATABASE_URL correspond aux identifiants du conteneur Postgres |
Prochaines étapes
- Configurer SMTP dans les paramètres Docmost pour les notifications email
- Configurer OIDC/SSO si votre équipe utilise un fournisseur d’identité
- Activer les snapshots automatiques de volumes Docker chez votre fournisseur VPS
Pour les comparatifs de fournisseurs VPS : selfhostvps.com/en/best/.