ERPNext Docker self-hosted: tu ERP en tu servidor
Guía técnica de 8 pasos para desplegar ERPNext v16 con Docker en producción en tu propio cloud (Hetzner, AWS, OVH, DigitalOcean). Usando frappe-docker oficial, NGINX con SSL Let's Encrypt, backups automáticos y monitoring básico.

¿Por qué self-hosted en lugar de SaaS?
Self-hosted significa que tu ERPNext corre en una infraestructura que tú controlas (un VPS en Hetzner, una EC2 en AWS, un servidor on-premise en tu oficina). El software es el mismo que usaría una versión SaaS, pero los datos, los backups y la operativa están en tu mano.
Ventajas claras: 1) coste mucho menor a partir de 15+ usuarios (un VPS Hetzner cuesta 6-25 €/mes vs 60-130 €/usuario/mes de SaaS enterprise); 2) propiedad total del dato (nadie más accede a tu información); 3) personalización ilimitada (tu servidor, tu kernel, tu config); 4) cumplimiento RGPD claro (eliges UE como datacenter); 5) sin lock-in (si cambias de proveedor cloud, mueves tus contenedores Docker en horas).
Trade-offs: 1) requieres conocimiento técnico (Docker, NGINX, certificados, backups) o un partner que lo gestione; 2) actualizaciones, parches de seguridad y migraciones son tu responsabilidad; 3) si tu servidor cae a las 3 AM, alguien tiene que levantarlo. Para pymes sin equipo IT, contratar un partner gestionado (CodigoNext incluido) suele compensar el ahorro de SaaS por simplicidad operativa.
Despliegue ERPNext con Docker paso a paso
De provisionar el VPS a tener ERPNext en producción con SSL y backups.
Provisiona el VPS
Mínimo recomendable: 4 GB RAM, 2 vCPU, 40 GB SSD para arranque (1-20 usuarios). Para 50+ usuarios: 8 GB RAM, 4 vCPU. Hetzner CX22 / AWS t3.medium / DigitalOcean Basic / OVH VPS Comfort 2 cumplen. Sistema operativo: Ubuntu 22.04 LTS recomendado.
Instala Docker y Docker Compose
Docker Engine 24+ y Docker Compose v2. Sigue la guía oficial de Docker para Ubuntu (`curl -fsSL https://get.docker.com | sh` y verifica con `docker --version`). Añade tu usuario al grupo docker para no usar sudo en cada comando.
Clona frappe-docker oficial
Repositorio oficial: github.com/frappe/frappe_docker. Es el método recomendado por el equipo de Frappe. Contiene los Compose files para distintos escenarios (production, easy install, custom apps). Para una pyme, usa pwd.yml o easy-install.py según preferencia.
Configura variables y secretos
Edita .env con: nombre del sitio (mi-empresa.com), versión ERPNext (v16), nombre de la base de datos, contraseñas (DB root, admin del sitio, redis), dominio y email para Let's Encrypt. Para producción, generar passwords aleatorios fuertes (`openssl rand -base64 32`).
Levanta los contenedores
`docker compose up -d` con el archivo de producción. Tendrás contenedores: frappe-bench, mariadb (o postgres), redis-cache, redis-queue, redis-socketio, scheduler, queue-default, queue-long, queue-short, websocket, configurator y nginx. Verifica con `docker compose ps` que todos están healthy.
Crea el sitio inicial
`docker compose exec backend bench new-site mi-empresa.com --admin-password X --db-root-password Y --install-app erpnext`. Esto crea la base de datos, instala ERPNext y configura el sitio. La instalación tarda 2-5 minutos.
Configura SSL con Let's Encrypt
El stack frappe-docker incluye traefik o nginx-proxy con cert-bot integrado. Configura LETSENCRYPT_EMAIL=admin@mi-empresa.com y VIRTUAL_HOST=mi-empresa.com en el .env. SSL se renueva automáticamente cada 60 días.
Configura backups y monitoring
Backup automático: `bench backup --with-files` programado en cron diario. Restauración probada periódicamente. Monitoring: log de errores en /home/frappe/frappe-bench/logs, métricas con Prometheus + Grafana opcional. Alerta por email cuando un contenedor muera o el disco supere el 80 %.
Tres alternativas a frappe-docker manual
1. Frappe Cloud (SaaS oficial): gestionado por Frappe Technologies, tu instancia ERPNext sin tocar Docker. 10-100 €/mes según plan. Recomendado para arranques rápidos y empresas que no quieren gestionar infraestructura. Datacenter Hetzner, AWS y otros disponibles.
2. Dokploy (open source): herramienta moderna que da UI a Docker Compose en tu propio servidor. Despliegue de aplicaciones containerizadas con flujo Heroku-like, monitoring incluido y deploys con git push. Alternativa a Coolify. Excelente para pymes con un sysadmin que quiere control sin complejidad.
3. Servicios managed (Elestio, Elest.io): despliegan ERPNext en tu cloud (AWS, DigitalOcean, Hetzner, etc.) y se encargan de actualizaciones, monitoring y backups. Pagas un fee mensual encima del coste del cloud. Alternativa intermedia entre SaaS puro y self-hosted manual.
— FAQ
Preguntas frecuentes sobre ERPNext Docker self-hosted
Las dudas reales del CTO o sysadmin que va a desplegar ERPNext.
Ver todas las preguntas¿Puedo desplegar ERPNext yo mismo con Docker o necesito partner?+−
¿Qué proveedor cloud recomiendas para hostear ERPNext?+−
¿Cuánto cuesta hostear ERPNext en mi propio servidor?+−
¿Y si quiero algo más simple que Docker manual?+−
¿Cómo se actualiza ERPNext en producción con Docker?+−
¿Qué pasa si mi servidor cae? ¿Cómo restauro ERPNext?+−
¿Cumple ERPNext self-hosted con RGPD y GDPR?+−
¿Docker, Dokploy, Frappe Cloud o Kubernetes? ¿Cuál elijo?+−
Recursos relacionados
Sigue investigando.
¿Te lo dejamos funcionando?
Si el self-hosted te suena bien pero no tienes equipo IT para mantenerlo, hosteamos ERPNext en infraestructura europea con backups, parches, monitoring y soporte. Coste estable y previsible.