Cómo Auto-alojar Docmost en un VPS (Guía 2026)
Docmost es una plataforma open-source de wiki y documentación colaborativa. Auto-alojarlo en un VPS te da propiedad total de los datos, un dominio personalizado y sin tarifas por puesto. Esta guía cubre la instalación completa — desde un VPS Ubuntu nuevo hasta una instancia Docmost en funcionamiento con SSL y Nginx.
Requisitos Previos
Antes de empezar, necesitas:
- Un VPS con Ubuntu 22.04 o 24.04 (mínimo 1 vCPU, se recomiendan 2 GB RAM)
- Un dominio o subdominio apuntando a la IP de tu VPS (ej.
docs.tudominio.es) - Acceso root o sudo al servidor
- Docker y Docker Compose instalados
Proveedores VPS recomendados:
- Hetzner Cloud — 4,15 €/mes, 2 vCPU, 4 GB RAM (mejor relación calidad-precio)
- Contabo VPS — 5,99 €/mes, 4 vCPU, 8 GB RAM, 200 GB NVMe
- DigitalOcean — 6 $/mes, ideal para principiantes
Paso 1: Configurar el VPS
Inicia un VPS Ubuntu 22.04 e inicia sesión como root:
ssh root@ip-de-tu-servidor
Crea un usuario no-root con privilegios sudo (recomendado):
adduser deploy
usermod -aG sudo deploy
Paso 2: Instalar Docker y Docker Compose
# Actualizar el sistema
apt update && apt upgrade -y
# Instalar Docker
curl -fsSL https://get.docker.com | sh
# Añadir el usuario al grupo docker
usermod -aG docker deploy
# Verificar la instalación
docker --version
docker compose version
Cierra sesión y vuelve a entrar para que los cambios de grupo surtan efecto.
Paso 3: Crear el Directorio de Docmost
mkdir -p /opt/docmost
cd /opt/docmost
Paso 4: Escribir el Archivo Docker Compose
Crea /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:
Nota de seguridad: Reemplaza
passwordcon una contraseña fuerte y generada aleatoriamente antes del despliegue.
Paso 5: Iniciar Docmost
cd /opt/docmost
docker compose up -d
Verifica que todos los contenedores están en ejecución:
docker compose ps
Deberías ver docmost, db y redis todos con estado running. Revisa los logs si algo falla:
docker compose logs docmost
Paso 6: Instalar y Configurar Nginx
apt install nginx -y
Crea /etc/nginx/sites-available/docmost:
server {
listen 80;
server_name docs.tudominio.es;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name docs.tudominio.es;
ssl_certificate /etc/letsencrypt/live/docs.tudominio.es/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/docs.tudominio.es/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;
}
}
Activa el sitio:
ln -s /etc/nginx/sites-available/docmost /etc/nginx/sites-enabled/
nginx -t
systemctl reload nginx
Paso 7: Obtener Certificado SSL
apt install certbot python3-certbot-nginx -y
certbot --nginx -d docs.tudominio.es
Sigue las instrucciones. Certbot actualiza automáticamente tu configuración Nginx y configura la renovación automática.
Paso 8: Configurar el Firewall
ufw allow OpenSSH
ufw allow 'Nginx Full'
ufw enable
No expongas el puerto 3000 directamente — todo el tráfico debe pasar por Nginx.
Paso 9: Primer Inicio de Sesión y Configuración del Workspace
- Abre
https://docs.tudominio.esen tu navegador - El asistente de configuración de Docmost aparecerá en la primera visita
- Crea tu cuenta de administrador (email + contraseña)
- Nombra tu workspace
- Crea tu primer espacio (ej. “Ingeniería”, “Producto”, “RRHH”)
- Invita a los miembros del equipo desde el panel de Configuración
Actualizar Docmost
Para obtener la última imagen y reiniciar:
cd /opt/docmost
docker compose pull
docker compose up -d
Estrategia de Copias de Seguridad
Haz copias de seguridad de los datos de PostgreSQL regularmente:
docker exec docmost-db-1 pg_dump -U docmost docmost > backup_$(date +%Y%m%d).sql
También haz copia del volumen Docker en /var/lib/docker/volumes/docmost_pg_data.
Resolución de Problemas
| Problema | Solución |
|---|---|
| Contenedores que no inician | Revisa docker compose logs para errores |
| 502 Bad Gateway | Docmost puede estar inicializándose — espera 30 segundos |
| Errores WebSocket | Verifica los headers Upgrade y Connection en Nginx |
| Conexión BD rechazada | Verifica que DATABASE_URL coincide con las credenciales del contenedor Postgres |
Próximos Pasos
- Configurar SMTP en los ajustes de Docmost para notificaciones por email
- Configurar OIDC/SSO si tu equipo usa un proveedor de identidad
- Activar snapshots automáticos de volúmenes Docker con tu proveedor VPS
Para comparativas de proveedores VPS: selfhostvps.com/en/best/.