Docmost est un wiki collaboratif open source (AGPL-3.0) : espaces, permissions, édition en temps réel, diagrammes intégrés. C'est notre choix pour la documentation d'équipe dans le comparatif des alternatives open source à Notion. Voici comment l'installer proprement sur votre propre serveur.
Préparer le serveur#
Connectez-vous en SSH, mettez le système à jour et créez un dossier dédié :
ssh root@votre-ip
apt update && apt upgrade -y
mkdir -p /opt/docmost && cd /opt/docmostVérifiez que Docker et le plugin Compose répondent :
docker --version
docker compose versionSi l'une des commandes échoue, installez Docker avec le script officiel (curl -fsSL https://get.docker.com | sh), puis relancez la vérification.
Écrire le fichier Docker Compose#
Générez d'abord un secret d'application long et aléatoire :
openssl rand -hex 32Créez ensuite /opt/docmost/docker-compose.yml. Remplacez le domaine, le secret et le mot de passe de la base :
services:
docmost:
image: docmost/docmost:latest
depends_on:
- db
- redis
environment:
APP_URL: "https://wiki.example.com"
APP_SECRET: "collez-ici-le-secret-genere"
DATABASE_URL: "postgresql://docmost:MOT_DE_PASSE@db:5432/docmost?schema=public"
REDIS_URL: "redis://redis:6379"
ports:
- "127.0.0.1:3000:3000"
restart: unless-stopped
volumes:
- docmost:/app/data/storage
db:
image: postgres:16-alpine
environment:
POSTGRES_DB: docmost
POSTGRES_USER: docmost
POSTGRES_PASSWORD: MOT_DE_PASSE
restart: unless-stopped
volumes:
- db_data:/var/lib/postgresql/data
redis:
image: redis:7.2-alpine
restart: unless-stopped
volumes:
- redis_data:/data
volumes:
docmost:
db_data:
redis_data:Lancez les trois services :
docker compose up -d
docker compose psLes trois conteneurs doivent être à l'état running. En cas de doute, docker compose logs -f docmost affiche les erreurs de connexion à la base.
Ajouter le HTTPS avec Caddy#
Caddy obtient et renouvelle les certificats Let's Encrypt tout seul. Installez-le depuis son dépôt officiel :
apt install -y debian-keyring debian-archive-keyring apt-transport-https curl
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | tee /etc/apt/sources.list.d/caddy-stable.list
apt update && apt install -y caddyRemplacez le contenu de /etc/caddy/Caddyfile par :
wiki.example.com {
reverse_proxy 127.0.0.1:3000
}Puis rechargez Caddy :
systemctl reload caddyOuvrez https://wiki.example.com : l'écran de création de l'espace de travail s'affiche. Le premier compte créé devient administrateur.
Sauvegarder la base chaque nuit#
Un wiki sans sauvegarde est un wiki en sursis. Créez le script /opt/docmost/backup.sh :
#!/usr/bin/env bash
set -euo pipefail
cd /opt/docmost
mkdir -p backups
docker compose exec -T db pg_dump -U docmost docmost | gzip > "backups/docmost-$(date +%F).sql.gz"
find backups -name '*.sql.gz' -mtime +14 -deleteRendez-le exécutable et planifiez-le à 3 h du matin :
chmod +x /opt/docmost/backup.sh
(crontab -l 2>/dev/null; echo "0 3 * * * /opt/docmost/backup.sh") | crontab -Les fichiers joints aux pages sont dans le volume docmost. Copiez régulièrement les sauvegardes hors du serveur (stockage objet, autre machine) : une sauvegarde sur le même disque ne protège pas d'une panne.
Mettre à jour Docmost#
cd /opt/docmost
./backup.sh
docker compose pull
docker compose up -dLisez les notes de version avant une mise à jour majeure : les migrations de base s'exécutent automatiquement au démarrage.
Questions fréquentes
Combien coûte l'auto-hébergement de Docmost ?
Le logiciel est gratuit. Comptez le prix d'un VPS de 2 Go de RAM, généralement entre 5 et 8 € par mois, plus le nom de domaine.
Peut-on installer Docmost sur un hébergement mutualisé ?
Non. Docmost a besoin de Docker, de PostgreSQL et de Redis, que les offres mutualisées ne permettent pas de faire tourner. Il faut un VPS ou un serveur dédié.
Comment importer des pages Notion dans Docmost ?
Exportez votre espace Notion en Markdown, puis utilisez l'import de Docmost depuis les paramètres de l'espace. Les pages et la hiérarchie sont conservées.
Comment restaurer une sauvegarde ?
Décompressez le fichier puis envoyez-le au conteneur de base : gunzip -c backups/docmost-AAAA-MM-JJ.sql.gz | docker compose exec -T db psql -U docmost docmost, sur une base vide.