Releases: OxiWanV2/Goinx
Releases · OxiWanV2/Goinx
Version 1.2.5
Goinx v1.2.5 - Patch: Fix Backend Working Directory
🐛 Correction de bug critique
Problème résolu
Correction d'un bug qui empêchait les backends Node.js de démarrer correctement lorsque lancés via Goinx. Le processus Node.js crashait immédiatement avec exit status 1 car le répertoire de travail n'était pas correctement défini.
Détails techniques
- Symptôme : Les backends Node.js se fermaient instantanément après le lancement avec l'erreur
Backend nodejs site <site> fermé avec erreur : exit status 1 - Cause : Le répertoire de travail (CWD) du processus Node.js n'était pas défini, empêchant
dotenvde trouver les fichiers.envet autres fichiers de configuration locaux - Solution : Ajout de
cmd.Dir = backendDirdansbackend/launcher.gopour définir explicitement le répertoire de travail avant le démarrage du processus
Fichiers modifiés
backend/launcher.go: Ajout de la définition du répertoire de travail pour les processus Node.js
📦 Installation
Téléchargez le binaire goinx et placez-le dans /usr/local/bin/ ou tout autre emplacement de votre choix.
chmod +x goinx
sudo mv goinx /usr/local/bin/Version 1.2.0
Goinx - Release Phase 2
Fonctionnalités principales ajoutées
- Intégration du reverse proxy pour backends Node.js, avec support des routes personnalisées.
- Lancement automatique des backends Node.js avec récupération et affichage des logs en temps réel via la CLI.
- Interface web VueJS intégrée, affichant une horloge dynamique synchronisée avec une API backend.
- Support complet de la gestion SSL avec Let's Encrypt.
- Gestion des routes statiques et SPA VueJS avec fallback.
- Commandes CLI étendues : activation/désactivation de sites, test de configuration, listing, logs backend, reload des serveurs.
- Séparation du backend sur port local avec proxy inverse via Gin.
- Amélioration UX de l’interface web du site d'exemple.
Version 1.1.0
Goinx — Phase 2 : Support SSL et Let's Encrypt
Ce qu’il y a de nouveau
- On peut maintenant utiliser des certificats SSL manuels ou générer automatiquement des certificats avec Let’s Encrypt, pour sécuriser les sites en HTTPS.
- Le serveur HTTPS est unique et gère tous les sites avec leurs certificats, ce qui évite les conflits et facilite la maintenance.
- Les certificats sont créés automatiquement lors du premier accès, grâce à la gestion intégrée des challenges Let’s Encrypt.
- Le serveur HTTP sur le port 80 redirige automatiquement vers HTTPS les sites configurés avec SSL.
- Les certificats sont mis en cache localement pour ne pas surcharger Let's Encrypt avec des demandes inutiles.
- Le système vérifie que les domaines pointent bien vers le serveur avant d’essayer de générer un certificat, pour éviter les erreurs.
- Grâce au reload, on peut recharger les sites et leurs certificats sans couper le service, pour un fonctionnement fluide et stable.
- La CLI prend en charge toutes ces nouveautés via les commandes classiques (
enable,disable,reload, etc.). - L’architecture reste claire et modulaire, bien séparée entre configuration, serveur, SSL et gestion des sites.
Ce qu’on va faire ensuite
- Ajouter un backend applicatif ou un proxy avancé pour plus de fonctionnalités.
- Créer une interface web pour gérer Goinx plus facilement. ( tjr a voir )
- Mettre en place du monitoring et une meilleure gestion des logs.
- Développer des tests unitaires et automatiser le déploiement avec CI/CD.
- Améliorer encore la performance et la sécurité générales.
Version 1.0.0
Première version de Goinx — Phase 1 terminée
Résumé de la release initiale :
- Multi-sites dynamiques : gestion de plusieurs sites avec activation/désactivation via liens symboliques (
sites-enabled). - Configuration flexible : fichiers
.confpour chaque site, intégrant ports, racines, rewrite VueJS, et dossier erreur personnalisé. - Lancement automatique : serveurs démarrés au boot pour sites activés, validation multi-conflit évitée.
- Page d’erreur moderne : page d’erreur HTML/CSS/JS intégrée, avec fallback et support multi-code.
- Gestion des erreurs : fichiers HTML custom dans un dossier
/errors, sinon page standard en Go. - CLI complet : commandes
list,enable,disable,testconf,reload. - Rechargement dynamique : possibilité de redémarrer les sites actifs sans downtime.
- Support Vue3 : page d’erreur animée et responsive avec Vue.js.
- Architecture modulaire : séparation claire entre configuration, serveur, erreurs.
Prochaines étapes pour la phase 2 :
- Support SSL / Let's Encrypt.
- Backends applicatifs ou proxy avancé.
- Interface d’administration web. ( a voir )
- Monitoring et logs avancés.
- Tests unitaires et déploiement CI/CD.