9f90c494ea4543d735e91cc70cacf8c23543a235
Belgium RP - Ansible Infrastructure
Overview
Ce projet Ansible est conçu pour déployer et gérer l'infrastructure du serveur Belgium RP. Le dépôt contient plusieurs rôles, tâches et playbooks Ansible pour automatiser le processus de déploiement.
Structure du Dépôt
- inventories/: Contient les fichiers d'inventaire Ansible.
- host_vars/: Variables spécifiques aux hôtes.
localhost.yml: Variables spécifiques à localhost.localhost/: Répertoire contenant des variables supplémentaires spécifiques aux hôtes.
- host_vars/: Variables spécifiques aux hôtes.
- playbooks/: Contient les playbooks Ansible pour déployer les applications.
- docker/: Playbooks pour déployer les conteneurs Docker.
deploy-docker-bitwarden.yml: Playbook pour déployer Bitwarden.- Bitwarden : Gestionnaire de mots de passe open-source qui stocke et gère les informations de connexion de manière sécurisée.
deploy-docker-bookstack.yml: Playbook pour déployer Bookstack.- Bookstack : Logiciel de gestion de documentation et de wiki pour créer et organiser des livres et des pages.
deploy-docker-cloudflare-ddns.yml: Playbook pour déployer Cloudflare DDNS.- Cloudflare DDNS : Service de DNS dynamique utilisant Cloudflare pour mettre à jour les enregistrements DNS automatiquement.
deploy-docker-duplicati.yml: Playbook pour déployer Duplicati.- Duplicati : Solution de sauvegarde open-source pour stocker des sauvegardes chiffrées de manière sécurisée.
deploy-docker-easywall.yml: Playbook pour déployer Easywall.- Easywall : Pare-feu simplifié pour la gestion et la sécurisation du réseau.
deploy-docker-file_browser.yml: Playbook pour déployer File Browser.- File Browser : Interface web pour gérer et partager des fichiers sur un serveur.
deploy-docker-firefly.yml: Playbook pour déployer Firefly III.- Firefly III : Outil de gestion financière personnelle pour suivre les dépenses et gérer les budgets.
deploy-docker-fivem.yml: Playbook pour déployer FiveM.- FiveM : Plateforme de modification pour GTA V, permettant la création de serveurs multijoueurs personnalisés. Cette version Docker simplifie le déploiement et la gestion des serveurs FiveM.
deploy-docker-gitea.yml: Playbook pour déployer Gitea.- Gitea : Service d'hébergement de dépôts Git léger et open-source.
deploy-docker-heimdall.yml: Playbook pour déployer Heimdall.- Heimdall : Page d'accueil pour organiser et accéder facilement aux applications et services.
deploy-docker-homepage.yml: Playbook pour déployer Homepage.- Homepage : Interface web personnalisable pour accéder rapidement aux applications web et services.
deploy-docker-kanboard.yml: Playbook pour déployer Kanboard.- Kanboard : Application de gestion de projets utilisant une approche Kanban pour organiser les tâches.
deploy-docker-nginx.yml: Playbook pour déployer Nginx Proxy Manager.- Nginx Proxy Manager : Interface utilisateur pour gérer les proxys Nginx, avec une gestion simplifiée des certificats SSL.
deploy-docker-portainer.yml: Playbook pour déployer Portainer.- Portainer : Interface de gestion pour déployer et superviser des environnements Docker.
deploy-docker-rainloop.yml: Playbook pour déployer Rainloop.- Rainloop : Client webmail rapide et moderne.
deploy-docker-uptimekuma.yml: Playbook pour déployer Uptime Kuma.- Uptime Kuma : Outil de surveillance de sites web pour suivre le temps de disponibilité.
cloudflare.yml: Playbook pour déployer Cloudflare.- Cloudflare : Réseau de diffusion de contenu et service de sécurité web.
codeserver.yml: Playbook pour déployer Code Server.- Code Server : Version de Visual Studio Code qui peut être exécutée dans un navigateur web.
deploy-homepage-config.yml: Playbook pour déployer la configuration de la Homepage.- Homepage Configuration : Configuration de l'interface web personnalisable pour accéder rapidement aux applications web et services.
- docker/: Playbooks pour déployer les conteneurs Docker.
- roles/: Contient les rôles Ansible pour le déploiement.
- deploy-docker/: Rôle pour déployer les conteneurs Docker.
- tasks/: Contient le fichier de tâches principal pour le déploiement.
main.yml: Fichier de tâches principal pour exécuter les tâches de déploiement.
- templates/: Contient divers fichiers de configuration YAML pour différentes applications.
bitwarden.yml: Configuration pour Bitwarden.bookstack.yml: Configuration pour Bookstack.cloudflare-ddns.yml: Configuration pour Cloudflare DDNS.duplicati.yml: Configuration pour Duplicati.easywall.yml: Configuration pour Easywall.filebrowser.yml: Configuration pour File Browser.firefly.yml: Configuration pour Firefly III.fivem.yml: Configuration pour FiveM.gitea.yml: Configuration pour Gitea.heimdall.yml: Configuration pour Heimdall.homepage.yml: Configuration pour Homepage.kanboard.yml: Configuration pour Kanboard.nginx.yml: Configuration pour Nginx Proxy Manager.portainer.yml: Configuration pour Portainer.rainloop.yml: Configuration pour Rainloop.uptimekuma.yml: Configuration pour Uptime Kuma.
- tasks/: Contient le fichier de tâches principal pour le déploiement.
- deploy-homepage-config/: Rôle pour déployer la configuration de la Homepage.
- pallxk.code_server/: Rôle pour déployer l'environnement de Code Server.
- defaults/: Contient les variables par défaut pour le rôle.
- handlers/: Contient les handlers déclenchés par les tâches.
- meta: Contient les métadonnées sur le rôle.
- tasks: Contient les fichiers de tâches pour le rôle.
- templates: Contient les fichiers de template pour le rôle.
- tests: Contient les fichiers de test pour le rôle.
- vars: Contient les fichiers de variables pour le rôle.
- deploy-docker/: Rôle pour déployer les conteneurs Docker.
Prérequis
- Docker
- Ansible
Installation
-
Clonez le dépôt :
git clone https://gitlab.com/votre-utilisateur/votre-depot.git cd votre-depot -
Exécutez le playbook Ansible :
ansible-playbook -i inventories/localhost.yml playbooks/docker/deploy-docker-bitwarden.yml
Tutoriel de Déploiement de Playbook Ansible
-
Configurer l'inventaire :
- Assurez-vous que le fichier
inventories/localhost.ymlcontient les informations nécessaires sur les hôtes. - Exemple de contenu pour
localhost.yml:all: hosts: localhost: ansible_connection: local
- Assurez-vous que le fichier
-
Configurer les variables d'hôte :
- Modifiez le fichier
inventories/host_vars/localhost.ymlpour adapter les variables à votre environnement. - Exemple de contenu pour
localhost.yml:some_variable: some_value
- Modifiez le fichier
-
Lancer le Playbook :
- Utilisez la commande suivante pour lancer le playbook souhaité :
ansible-playbook -i inventories/localhost.yml playbooks/docker/deploy-docker-fivem.yml - Remplacez
deploy-docker-fivem.ymlpar le playbook correspondant à l'application que vous souhaitez déployer.
- Utilisez la commande suivante pour lancer le playbook souhaité :
Détails du Répertoire
- inventories/host_vars/localhost.yml: Inventaire et variables spécifiques à localhost.
- playbooks/docker/: Contient les playbooks pour déployer divers conteneurs Docker.
- Chaque fichier YAML correspond à la configuration de déploiement pour une application spécifique.
- roles/deploy-docker/tasks/main.yml: Point d'entrée principal pour déployer les conteneurs Docker.
- roles/deploy-docker/templates/: Contient les configurations YAML pour chaque application.
- roles/deploy-homepage-config/: Gère le déploiement des configurations de la homepage.
- roles/pallxk.code_server/: Gère le déploiement de l'environnement du serveur de code.
Configuration
- Modifiez les fichiers YAML dans
roles/deploy-docker/templates/pour configurer les applications selon vos besoins. - Mettez à jour le fichier d'inventaire avec les détails corrects du serveur.
Contribuer
- Forkez le dépôt.
- Créez une nouvelle branche (
git checkout -b feature-branch). - Apportez vos modifications.
- Commitez vos modifications (
git commit -am 'Ajout d'une nouvelle fonctionnalité'). - Poussez sur la branche (
git push origin feature-branch). - Ouvrez une Merge Request.
Licence
Ce projet est sous licence MIT - voir le fichier LICENSE pour plus de détails.
Créateurs du Projet
- Big Geo: Ne supporte pas les humains donc Contact Via MichMich.
- MichMich (Discord: mitch_grey48)
Remerciements
- Big Geo
Description
Languages
INI
100%