Benoît Hubert 62fe77f55a fini améliorations dans readme пре 1 година
..
roles d145752b2c Documentation vault et variables пре 1 година
vars d145752b2c Documentation vault et variables пре 1 година
README.md 62fe77f55a fini améliorations dans readme пре 1 година
inventory.ini d145752b2c Documentation vault et variables пре 1 година
roles.md 23561faf02 Correction coquille пре 1 година
site.yml d145752b2c Documentation vault et variables пре 1 година

README.md

Installation LEMP + WordPress sur Debian 12 avec rôles

Ceci est une copie presque conforme du readme de lemp-wordpress. Ce qui a changé :

  • le nom du playbook : site.yml est à la racine du présent dossier.
  • le nom du fichier de variables d'exemple (vars/debian-113.yml).
  • la gestion des données sensibles (nom utilisateur et mot de passe MySQL et admin WordPress) via un vault.

IMPORTANT

Il faudra fournir un fichier de variables (voir plus bas) pour personnaliser l'installation.

En particulier dans ce fichier, veiller à ce que site_url corresponde au hostname ou à l'IP de la machine ciblée.

Notes

Échec (apparent) d'une des täches

La tâche [wordpress : Vérifier si WordPress est installé] peut donner l'impression d'un échec. Mais elle sert juste à collecter l'information comme quoi WordPress est installé (ou non). L'outil utilisé pour cela (wp, la CLI de WordPress) renvoie un code non-zéro si WordPress n'est pas installé.

Arguments

Ici le noeud cible n'a pas été configuré avec des clés SSH, d'où :

  • -b pour become
  • -k pour mdp SSH
  • -K pour mdp become

Autres arguments :

  • --limit <hote> pour n'exécuter que sur un certain hote référencé dans l'inventaire
  • -e @vars/debian-xyz-vault.yml inclure un fichier chiffré de variables spécifiques à cet hôte (par exemple vars/debian-113-vault.yml)
  • -e @vars/debian-xyz.yml inclure un fichier en clair de variables spécifiques à cet hôte (exemple dans vars/debian-113.yml)

Le vault doit avoir été créé avec ansible-vault create vars/debian-xyz-vault.yml et contenir ces variables (remplacer les valeurs) :

db_username: nom_utilisateur_mysql
db_password: mot_de_passe_mysql
wp_username: nom_utilisateur_admin_wordpress
wp_password: mot_de_passe_admin_wordpress

Installer/désinstaller

Installer tout

ansible-playbook -i chemin/vers/inventory.ini site.yml -bkK --limit debian-113 -e @vars/debian-113.yml -e @vars/debian-113-vault.yml --ask-vault-pass

Désinstaller manuellement (exécuter sur le noeud cible)

# remove MariaDB databases
sudo mysql -uroot -e "drop database wordpress;"

# remove packages
sudo apt remove -y curl
sudo apt remove -y mariadb-server mariadb-client
sudo apt remove -y php8.2 php8.2-fpm php8.2-phar php8.2-curl php8.2-mysqli php8.2-iconv php8.2-gd php8.2-imagick php8.2-intl php8.2-mbstring php8.2-zip php8.2-dom
sudo apt remove -y nginx
sudo apt autoremove

# remove wordpress and wp-cli
sudo rm -rf /var/www/wordpress
sudo rm /usr/local/bin/wp