frappe_docker/COOLIFY_DEPLOYMENT.md
2025-08-29 02:12:13 +02:00

144 lines
3.9 KiB
Markdown

# Despliegue de ERPNext con Coolify
Esta guía explica cómo desplegar ERPNext en un VPS utilizando Coolify.
## Requisitos Previos
- Un VPS con Docker instalado
- Coolify instalado y configurado en el VPS
- Acceso SSH al servidor
## Configuración para Coolify
### Archivo de Configuración Principal
El archivo `coolify.yaml` proporciona una configuración simplificada optimizada para Coolify que incluye:
1. **Servicio ERPNext principal** con healthchecks
2. **Base de datos MariaDB** con configuración óptima
3. **Servicios Redis** para cache y colas
4. **Volúmenes persistentes** para datos
5. **Variables de entorno** configurables
### Variables de Entorno
Crea un archivo `.env` con las siguientes variables:
```bash
# Versión de ERPNext
ERPNEXT_VERSION=v15.77.0
# Contraseña de la base de datos
DB_PASSWORD=tu_password_seguro
# Puerto HTTP
HTTP_PORT=8080
# Configuración del host del sitio
FRAPPE_SITE_NAME_HEADER=$$host
```
## Pasos de Despliegue
### 1. Preparar el Servidor
```bash
# Clonar el repositorio
git clone https://github.com/frappe/frappe_docker
cd frappe_docker
# Crear archivo .env
cp example.env .env
# Editar .env con tus configuraciones
```
### 2. Configurar en Coolify
1. **Crear una nueva aplicación** en Coolify
2. **Seleccionar "Docker Compose"** como tipo de aplicación
3. **Conectar el repositorio** o subir los archivos manualmente
4. **Especificar el archivo compose**: `coolify.yaml`
5. **Configurar las variables de entorno** en la interfaz de Coolify
### 3. Variables de Entorno en Coolify
Configura las siguientes variables en la interfaz de Coolify:
- `ERPNEXT_VERSION`: Versión de ERPNext (ej: v15.77.0)
- `DB_PASSWORD`: Contraseña segura para MariaDB
- `HTTP_PORT`: Puerto para acceder a la aplicación
- `FRAPPE_SITE_NAME_HEADER`: Configuración del host (dejar por defecto)
### 4. Despliegue
1. **Iniciar el despliegue** desde la interfaz de Coolify
2. **Monitorear los logs** durante el proceso
3. **Verificar que todos los servicios** estén saludables
## Configuraciones Avanzadas
### Usar Base de Datos Externa
Si prefieres usar una base de datos externa:
```bash
# En el archivo .env o variables de Coolify
DB_HOST=tu_host_de_bd_externa
DB_PORT=3306
DB_PASSWORD=password_de_tu_bd
```
### Configurar Dominio Personalizado
1. **Configurar DNS** apuntando a tu VPS
2. **Configurar reverse proxy** en Coolify
3. **Actualizar `FRAPPE_SITE_NAME_HEADER`** con tu dominio
### Backup y Restauración
Coolify proporciona herramientas integradas para:
- Backups automáticos de volúmenes
- Restauración desde snapshots
- Monitorización de recursos
## Solución de Problemas
### Errores Comunes
1. **Healthcheck failures**: Verificar que todos los servicios estén ejecutándose
2. **Problemas de conexión a BD**: Verificar credenciales y configuración de red
3. **Problemas de permisos**: Asegurar que los volúmenes tengan los permisos correctos
### Logs y Monitorización
- Usar la interfaz de Coolify para ver logs en tiempo real
- Configurar alertas para servicios críticos
- Monitorizar uso de CPU, memoria y almacenamiento
## Mantenimiento
### Actualizaciones
1. **Actualizar versión de ERPNext**: Cambiar `ERPNEXT_VERSION` en las variables
2. **Reiniciar aplicación**: Desde la interfaz de Coolify
3. **Verificar compatibilidad**: Antes de actualizar a versiones mayores
### Escalado
Coolify permite:
- Escalar horizontalmente los servicios
- Ajustar recursos (CPU, memoria)
- Configurar auto-scaling basado en métricas
## Recursos Adicionales
- [Documentación oficial de Coolify](https://coolify.io/docs)
- [Foro de la comunidad ERPNext](https://discuss.erpnext.com)
- [Repositorio frappe_docker](https://github.com/frappe/frappe_docker)
## Soporte
Para problemas específicos de:
- **Configuración de Coolify**: Consultar documentación de Coolify
- **Problemas de ERPNext**: Abrir issue en el repositorio frappe_docker
- **Problemas de base de datos**: Verificar logs de MariaDB/Redis