Benoît Hubert f7475a9b5c Correction droits et ajouts modules PHP vor 1 Jahr
..
README-todo.md f7475a9b5c Correction droits et ajouts modules PHP vor 1 Jahr
ansible-tuto-chatgpt.md c8432d24b2 clean vor 1 Jahr
hosts c8432d24b2 clean vor 1 Jahr
install_php_mysql_alpine.yml c8432d24b2 clean vor 1 Jahr

README-todo.md

Install WP sur Alpine, Debian

Alpine

Erreurs rencontrées

Run playbook:

ansible-playbook -i inventory/hosts playbooks/install_php_mysql_alpine.yml -K

MariaDB déjà démarré

TASK [MariaDB setup] **********************************************************************************************************************
fatal: [192.168.1.85]: FAILED! => {"changed": true, "cmd": ["/etc/init.d/mariadb", "setup"], "delta": "0:00:00.009031", "end": "2024-02-14 16:27:03.174459", "msg": "non-zero return code", "rc": 1, "start": "2024-02-14 16:27:03.165428", "stderr": " * mariadb: cannot `setup' as it has not been stopped", "stderr_lines": [" * mariadb: cannot `setup' as it has not been stopped"], "stdout": "", "stdout_lines": []}

Résolu en vérifiant si MariaDB est déjà up & running.

Module manquant pour mysql_db

ASK [create MySQL database] **************************************************************************************************************
fatal: [192.168.1.85]: FAILED! => {"changed": false, "msg": "A MySQL module is required: for Python 2.7 either PyMySQL, or MySQL-python, or for Python 3.X mysqlclient or PyMySQL. Consider setting ansible_python_interpreter to use the intended Python version."}

Pas mal de modules à installer

Debian

ansible-playbook -i ../ansible-initial-debian-setup/inventory.ini playbooks/install_php_mysql_debian.yml -K --limit debian-111

Changements par rapport à Alpine

  • ATTENTION Nginx doit être installé avant d'unzip WordPress vers /var/www (BUG dans mon playbook Alpine).
  • pkgconfig et mariadb-dev n'existent pas sous Debian.
  • php8.2-json et php8.2-openssl non plus
  • mariadb non plus => mariadb-server et mariadb-client
  • install de mysqlclient se fait via apt (python3-mysqldb)
  • du coup plus besoin d'installer gcc, python3-dev, python3-pip
  • todo:
    • variables dans vault (a minima password bdd et password wp)
    • url du site aussi en variable
    • installer php8.2-gd pour WP
    • gestion des droits car /var/www/wordpress est créé avec nobody:nobody

Passer un fichier de variables à l'exécution - extrait de ansible-playbook --help

  -e EXTRA_VARS, --extra-vars EXTRA_VARS
                        set additional variables as key=value or YAML/JSON, if filename prepend with @. This argument may be specified multiple times.

Rendre plus générique

Mis en commentaire le bloc vars

  # vars:
  #   db_username: wordpress
  #   db_password: wordpress
  #   db_name: wordpress
  #   site_url: debian-111

Installer tout

ansible-playbook -i ../ansible-initial-debian-setup/inventory.ini playbooks/install_php_mysql_debian.yml -bkK --limit debian-112 -e @vars-debian-112.yml
ansible-playbook -i ../ansible-initial-debian-setup/inventory.ini playbooks/install_php_mysql_debian.yml -bkK --limit debian-113 -e @vars-debian-113.yml

Désinstaller tout

ansible-playbook -i ../ansible-initial-debian-setup/inventory.ini playbooks/uninstall_php_mysql_debian.yml -bkK --limit debian-112 -e @vars-debian-112.yml