ansible-role-php/README.md

38 lines
1.4 KiB
Markdown
Raw Normal View History

2023-02-07 17:47:58 +01:00
PHP
===
Diese Rolle installiert PHP und PHP-FPM mit einigen grundlegenden Anpassungen der Konfiguration.
Für PHP-FPM werden systemd-Templates installiert. In Zusammenhang mit eigenen (beschränkten) Linux-Nutzerkonten
lassen sich daraus Services für verschiedene Anwendungen erstellen.
2023-02-07 19:53:33 +01:00
## Verfügbare Variablen
2023-02-07 17:47:58 +01:00
Für die PHP-Konfiguration sind verschiedene defaults gesetzt. Über die jeweilige `host_vars` lassen sich im Dictionary `php`
die defaults überschreiben.
Beispiel:
```YAML
php:
memory_limit: 256M
post_max_size: 30M
```
2023-11-15 12:32:00 +01:00
Durch setzen der Variable `phpfpm_exporter: true` wird ein [Prometheus Exporter](https://github.com/Lusitaniae/phpfpm_exporter)
installiert. Das zugehörife [Grafana Dashboard](https://grafana.com/grafana/dashboards/5714-php-fpm-multi-pool/) trägt die ID `5714`.
## Nutzerkonto und PHP-FPM-Service anlegen
Per Ansible Tag kann ein Systemkonto und ein PHP-FPM-Socket und Service angelegt werden. Am Beispiel des playbooks `php.yml`:
```Shell
2023-02-08 11:23:01 +01:00
ansible-playbook playbooks/php.yml --tags php_version,never,user -e "php_user=foobar create_home=true"
```
Systemd-Socket und Service sind anschließend als `php-fpm@{{ php_user }}.[socket|service]` verfügbar.
### Varibablen
| Variable | default | Bedeutung |
|--|--|--|
| php_user | |Erforderlich, Nutzername des neuen Systemkontos |
| create_home | false | Optional, Anlegen des Homedirs unter `/home/{{ php_user }}` |