Este proyecto proporciona un script de instalación automatizada de N8N para servidores HidenCloud, facilitando el despliegue de workflows de automatización en la nube.
N8N es una herramienta de automatización de flujos de trabajo que permite conectar diferentes servicios y APIs de forma visual. Este script simplifica el proceso de instalación y configuración de N8N en servidores HidenCloud.
El script index.js automatiza los siguientes procesos:
- Instalación automática de N8N usando npm
- Inicialización del servicio N8N
- Monitoreo del proceso con logs en tiempo real
- Gestión de errores y manejo de excepciones
git clone https://github.com/SteveMoya/N8N_Hidencloud.git
cd N8N_Hidencloud- Copia el archivo de ejemplo:
cp .env.example .env- Edita el archivo
.envcon tus configuraciones:
nano .env- Configura las siguientes variables obligatorias:
# Configuración básica
TZ=America/Mexico_City # Tu zona horaria
GENERIC_TIMEZONE=America/Mexico_City # Tu zona horaria
WEBHOOK_URL=tu-dominio.com # Tu dominio o IP pública
N8N_PORT=3000 # Puerto proporcionado por HidenCloud
N8N_SECURE_COOKIE=FALSE # TRUE si usas HTTPS
# Configuración de seguridad
N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=TRUE
N8N_RUNNERS_ENABLED=TRUEnpm installAl configurar tu aplicación en el panel de HidenCloud, debes especificar:
- MAIN FILE:
index.js(exactamente como se muestra) - PUERTO: El puerto que HidenCloud te proporcione debe ser configurado en la variable de entorno
N8N_PORT
Ejemplo de configuración:
Main File: index.js
Port: 3000 (o el puerto que te asigne HidenCloud)
Si deseas usar una base de datos PostgreSQL en lugar del SQLite por defecto, descomenta y configura estas variables en tu archivo .env:
DB_POSTGRESDB_DATABASE=postgres
DB_POSTGRESDB_HOST=tu-host-db.com
DB_POSTGRESDB_PASSWORD=tu-contraseña-segura
DB_POSTGRESDB_PORT=5432
DB_POSTGRESDB_SCHEMA=public
DB_POSTGRESDB_SSL_REJECT_UNAUTHORIZED=FALSE
DB_POSTGRESDB_USER=tu-usuario-db
DB_TYPE=postgresdb| Variable | Descripción | Valor por Defecto | Requerido |
|---|---|---|---|
TZ |
Zona horaria del servidor | - | ✅ |
GENERIC_TIMEZONE |
Zona horaria genérica | - | ✅ |
WEBHOOK_URL |
Dominio o IP pública | - | ✅ |
N8N_PORT |
Puerto de la aplicación | 5678 | ✅ |
N8N_SECURE_COOKIE |
Cookies seguras (HTTPS) | FALSE | ❌ |
N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS |
Permisos de archivos | TRUE | ❌ |
N8N_RUNNERS_ENABLED |
Habilitar runners | TRUE | ❌ |
node index.jsEl script se ejecutará automáticamente cuando HidenCloud inicie tu aplicación usando el index.js como archivo principal.
El script proporciona logs detallados de la instalación y ejecución:
- ✅ Logs de instalación: Muestra el progreso de instalación de N8N
- 📝 Logs de ejecución: Output en tiempo real del proceso N8N
- ❌ Logs de errores: Manejo de errores y excepciones
- 🔚 Logs de finalización: Códigos de salida del proceso
- Error de Puerto: Asegúrate de que
N8N_PORTcoincida con el puerto asignado por HidenCloud - Error de Permisos: Verifica que
N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=TRUE - Error de Timezone: Usa una zona horaria válida (ej:
America/Mexico_City) - Error de Webhook: Asegúrate de que
WEBHOOK_URLsea accesible públicamente
# Verificar variables de entorno
cat .env
# Verificar puerto disponible
netstat -tulpn | grep :3000N8N_Hidencloud/
├── index.js # Script principal de instalación
├── package.json # Configuración del proyecto npm
├── .env.example # Archivo de ejemplo para variables de entorno
├── .env # Variables de entorno (crear desde .env.example)
└── README.md # Este archivo
- 🔐 Variables de entorno: Nunca subas tu archivo
.enval repositorio - 🛡️ Permisos: El script enforce permisos seguros en archivos de configuración
- 🌐 HTTPS: Usa
N8N_SECURE_COOKIE=TRUEcuando tengas certificados SSL
Las contribuciones son bienvenidas. Por favor:
- Fork el proyecto
- Crea una rama para tu feature (
git checkout -b feature/AmazingFeature) - Commit tus cambios (
git commit -m 'Add some AmazingFeature') - Push a la rama (
git push origin feature/AmazingFeature) - Abre un Pull Request
Este proyecto está bajo la Licencia ISC. Ver el archivo package.json para más detalles.
SteveMoya
- GitHub: @SteveMoya
- Proyecto: N8N_Hidencloud
Si tienes problemas o preguntas:
- Revisa la sección de Solución de Problemas
- Abre un Issue en GitHub
- Consulta la documentación oficial de N8N
⭐ ¡No olvides dar una estrella al proyecto si te fue útil!