Prompt para levantar Frappe + ERPNext 16 con Docker
Contexto de Negocio e Infraestructura
Desplegar ERPNext 16 con la arquitectura oficial de Frappe Docker en un entorno local de desarrollo suele ser desafiante por la cantidad de servicios involucrados (Nginx, Gunicorn, Celery, Redis, MariaDB, y Node). Estructurar un ambiente multi-contenedor alineado a las buenas prácticas de desarrollo local es vital.
La gran ventaja de dominar esta práctica a nivel local es que el paso a producción en un servidor VPS se vuelve sumamente sencillo: te ahorras todo el trabajo y la frustración de instalar dependencias en el sistema operativo del servidor, ya que con Docker las dependencias viven encapsuladas dentro del propio contenedor.
Este artículo presenta el prompt completo listo para ser utilizado en tu flujo de trabajo local.
Actúa como un Administrador de Sistemas Senior y Experto en DevOps especialista en el ecosistema Frappe.
Objetivo
Configurar, levantar y validar un entorno local completo y operativo de Frappe/ERPNext utilizando Docker (frappe_docker).
Parámetros de Entrada
- Versión de Frappe/ERPNext:
v16.20.0 - Contraseña del Administrador (Administrator):
erpnext2026 - Nombre del Sitio (Site Name):
erpnext-antigravity
Instrucciones para el Agente
1. Configuración de Archivos
- Clonar el repositorio oficial
frappe_docker. - Generar el archivo
docker-compose.ymlde desarrollo local configurado para localhost:8080. - Desactivar la directiva
innodb_snapshot_isolationen el comando de inicio del servicio de MariaDB en el archivodocker-compose.yml(y sus overrides si aplica) agregando la bandera--innodb-snapshot-isolation=OFF. Esto es fundamental para prevenir el error de concurrencia/deadlockMySQLdb.OperationalError: 1020en la tablatabUserdurante el Wizard y el login inicial. - Configurar el archivo
.envmapeando la versión de ERPNext resuelta, credenciales y puertos de desarrollo.
2. Despliegue Automatizado
- Levantar todos los contenedores requeridos (nginx, python-app, workers, scheduler, redis-cache, redis-queue, mariadb).
- Crear el sitio local (utilizando el Nombre del Sitio especificado o el valor por defecto) e instalar la aplicación
erpnext. - Asignar la contraseña especificada en los parámetros de entrada al usuario Administrator.
3. Validación de Funcionamiento con Playwright (CRÍTICO)
-
Automatizar una sesión de navegación web utilizando Playwright. Navegar como un usuario real a
http://localhost:8080(la navegación en un navegador real asegura la correcta carga del motor web y ejecución de JS, no te limites a hacer peticiones HTTP en crudo). -
Validar específicamente la correcta carga de todos los archivos estáticos y hojas de estilo CSS (capturando logs de consola del navegador y asegurando que no haya errores de recursos 404). Si detectas que el CSS no carga (un problema típico en Frappe Docker por permisos de volumen), debes ingresar al contenedor y resolverlo ejecutando comandos de compilación de assets.
-
Completar el formulario de Login con el usuario Administrator y la contraseña definida para verificar que el inicio de sesión sea exitoso y no devuelva errores en la interfaz.
Beneficios del Enfoque Agente/Autónomo
Al delegar la tarea completa al agente de IA con este prompt, la interacción se reduce a un solo comando de inicialización. El agente se encarga de monitorear los logs del contenedor de backend, capturar fallas silenciosas en la compilación de assets de Node/Sass y resolver problemas de caché que suelen entorpecer los arranques iniciales del framework Frappe.