Hoe je Docmost Zelf-host op een VPS (2026 Gids)
Docmost is een open-source samenwerkingswiki en documentatieplatform. Het zelf hosten op een VPS geeft je volledige controle over je gegevens, een eigen domein, en geen kosten per gebruiker. Deze gids behandelt de volledige setup van een verse Ubuntu VPS tot een werkende Docmost instantie met SSL en Nginx.
Vereisten
Voor je begint, heb je nodig:
- Een VPS met Ubuntu 22.04 of 24.04 (minimaal 1 vCPU, 2GB RAM aanbevolen)
- Een domein of subdomein dat naar je VPS IP wijst (bijv.
docs.jouwdomein.com) - Root- of sudo-toegang tot de server
- Docker en Docker Compose geรฏnstalleerd
Aanbevolen VPS providers:
- Hetzner Cloud - โฌ4,15/maand, 2 vCPU, 4GB RAM (beste prijs-kwaliteitsverhouding)
- Contabo VPS - โฌ5,99/maand, 4 vCPU, 8GB RAM, 200GB NVMe
- DigitalOcean - $6/maand, beginner-vriendelijk
Stap 1: Je VPS Voorbereiden
Start een nieuwe Ubuntu 22.04 VPS op. SSH in als root:
ssh root@jouw-server-ip
Maak een niet-root gebruiker met sudo-rechten (aanbevolen):
adduser deploy
usermod -aG sudo deploy
Stap 2: Installeer Docker en Docker Compose
# Systeem bijwerken
apt update && apt upgrade -y
# Docker installeren
curl -fsSL https://get.docker.com | sh
# Voeg je gebruiker toe aan de docker groep
usermod -aG docker deploy
# Verifieer installatie
docker --version
docker compose version
Log uit en weer in voor de groepswijzigingen van kracht worden.
Stap 3: Maak de Docmost Map aan
mkdir -p /opt/docmost
cd /opt/docmost
Stap 4: Schrijf het Docker Compose Bestand
Maak /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:
Beveiligingsnotitie: Vervang
passworddoor een sterk, willekeurig gegenereerd wachtwoord vรณรณr je deze deployment uitvoert.
Stap 5: Start Docmost
cd /opt/docmost
docker compose up -d
Controleer of alle containers draaien:
docker compose ps
Je zou docmost, db en redis allemaal in de running-status moeten zien. Bekijk logs als er iets mislukt:
docker compose logs docmost
Stap 6: Installeer en Configureer Nginx
apt install nginx -y
Maak /etc/nginx/sites-available/docmost aan:
server {
listen 80;
server_name docs.jouwdomein.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name docs.jouwdomein.com;
ssl_certificate /etc/letsencrypt/live/docs.jouwdomein.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/docs.jouwdomein.com/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;
}
}
Activeer de site:
ln -s /etc/nginx/sites-available/docmost /etc/nginx/sites-enabled/
nginx -t
systemctl reload nginx
Stap 7: Verkrijg SSL Certificaat
apt install certbot python3-certbot-nginx -y
certbot --nginx -d docs.jouwdomein.com
Volg de prompts. Certbot zal automatisch je Nginx-config bijwerken met de paden naar het certificaat en automatische verlenging instellen.
Stap 8: Configureer Firewall
ufw allow OpenSSH
ufw allow 'Nginx Full'
ufw enable
Maak geen port 3000 direct zichtbaar - al het verkeer moet via Nginx lopen.
Stap 9: Eerste Login en Werkruimtea Setup
- Open
https://docs.jouwdomein.comin je browser - Je ziet de setup wizard bij je eerste bezoek
- Maak je admin-account aan (e-mail + wachtwoord)
- Geef je werkruimte een naam
- Maak je eerste ruimte aan (bijv. โEngineeringโ, โProductโ, โHRโ)
- Nodig teamleden uit via het Instellingen-paneel
Documentatie Updaten
Voor de nieuwste image ophalen en herstarten:
cd /opt/docmost
docker compose pull
docker compose up -d
Back-up Strategie
Maak regelmatig back-ups van PostgreSQL-data:
docker exec docmost-db-1 pg_dump -U docmost docmost > backup_$(date +%Y%m%d).sql
Maak ook een back-up van de Docker-volume op /var/lib/docker/volumes/docmost_pg_data.
Probleemoplossing
| Probleem | Oplossing |
|---|---|
| Containers starten niet | Controleer docker compose logs op fouten |
| 502 Bad Gateway | Docmost is mogelijk nog aan het initialiseren - wacht 30s en probeer opnieuw |
| WebSocket fouten | Zorg dat Upgrade en Connection headers in Nginx-config staan |
| DB-verbinding geweigerd | Controleer dat DATABASE_URL overeenkomt met de gegevens van de Postgres-container |
Volgende Stappen
- Stel SMTP in in Docmost voor e-mailmeldingen
- Configureer OIDC/SSO indien je team een identiteitsprovider gebruikt
- Schakel automatische Docker-volume snapshots in via je VPS-aanbieder
Voor vergelijkingen tussen VPS-aanbieders, zie selfhostvps.com/en/best/.