Un outil CLI qui rationalise le déploiement et la gestion des projets auto-hébergés Next.js et node.js, permettant l'initialisation, le déploiement de GitHub, la mise à jour, la suppression et la gestion des applications, ainsi que la configuration sans effort des domaines et des certificats SSL, en simplifiant l'intégralité du cycle de vie des applications Web sur les serveurs distants.
Pour installer Quicky, acquise d'abord un serveur Linux Ubuntu à partir d'un fournisseur tel que DigitalOcean ou Hetzner.
Après avoir configuré votre serveur, connectez-vous (par exemple, via SSH) et installez Node.js et NPM en exécutant les commandes suivantes:
sudo apt update
sudo apt install -y nodejs npm Installez Quicky à l'échelle mondiale à l'aide de npx ou npm :
npx quicky@latest installou
sudo npm install -g quicky Remarque : La commande sudo est nécessaire pour l'installation globale et pour éviter les problèmes d'autorisation lors de la configuration des domaines.
quicky initCette commande vous invitera à saisir vos informations d'identification GitHub et vos configurations de base pour la configuration de vos projets.
Quicky nécessite que votre jeton d'accès GitHub et votre nom d'utilisateur interagissent avec vos référentiels. Pour créer un nouveau jeton, suivez ces étapes:
Pour activer le déploiement continu, Quicky demande une URL WebHook pour les déploiements automatisés. Il utilise votre jeton GitHub pour configurer un écouteur WebHook et créer des webhooks dynamiquement. Vous devrez créer un sous-domaine (par exemple, webhook.example.com ) pointant vers l'adresse IP de votre serveur. Cela peut être fait en ajoutant un enregistrement A DNS avec l'adresse IPv4 de votre serveur.
quicky deployQuicky prend désormais en charge le déploiement des projets Next.js et node.js. Pendant le processus de déploiement, vous serez invité à sélectionner le type de projet:
Suivez les invites pour sélectionner votre référentiel Next.js. Quicky gérera automatiquement le déploiement et la configuration.
Avant de déployer un projet Node.js, assurez-vous que votre fichier d'application principal est nommé index.js . Vous avez la possibilité de spécifier si votre projet utilisera un port:
.env , vous permettant de pointer des domaines à votre projet.Cette commande vous invitera à fournir:
Variables d'environnement - Pendant le déploiement, il vous sera demandé si vous souhaitez ajouter des variables d'environnement à votre projet. Quicky gérera la sauvegarde du numéro de port dans le fichier .env de votre projet le cas échéant.
quicky manageRépertorie tous les projets déployés et vous permet de démarrer , d'arrêter , de redémarrer , de mettre à jour ou de supprimer un projet spécifique.
quicky update < pid >Met à jour un projet spécifique par son PID avec les derniers modifications du référentiel GitHub.
quicky listAffiche un aperçu de tous les projets déployés, y compris les détails suivants:
Avant d'ajouter un domaine à votre projet, vous devez:
A DNS pointant vers l'adresse IPv4 de votre serveur.Une fois que vous avez votre domaine, vous pouvez facilement le gérer avec la commande suivante:
quicky domainsCette commande vous permet d'ajouter et de supprimer sans effort des domaines et des sous-domaines pour vos projets.
Quicky fournit un serveur WebHook intégré pour mettre à jour automatiquement vos projets lorsque les modifications sont poussées vers GitHub. Voici comment le configurer:
Condition préalable
Configuration initiale
quicky webhooksCette commande sera:
Configuration
Vérifiez la configuration
quicky webhooks statusCela montre:
Configuration de l'accès au tableau de bord
quicky webhooks dashboardTableau de bord d'accès
Utilisez quicky webhooks avec ces commandes:
status - Vérifiez l'état du serveur WebHookrestart - redémarrer le serveur WebHookstop - Arrêtez le serveur Webhooklogs - Afficher les journaux de serveurs WebHookdashboard - Accédez au tableau de bord Webhookquicky upgradeAméliore rapidement la dernière version.
quicky uninstallSupprime rapidement votre système.
Ce projet est autorisé en vertu de la licence MIT - voir le fichier LICENSE pour plus de détails.
N'hésitez pas à me contacter? @alemalohe si vous avez des questions ou des commentaires!
Les contributions sont les bienvenues! Veuillez lire le fichier contributif pour les directives sur la façon de commencer.