* Enable MariaDB binary log
This resolves a warning in the database server log:
[Warning] You need to use --log-bin to make --binlog-format work.
Pros:
* support for point-in-time recovery
* necessary for replication
Cons:
* slows down database operations ("slightly", per the manual)
* takes up disk space (mitigated by `--expire-logs-days=2`)
See also:
* <https://mariadb.com/kb/en/binary-log/>
* <https://mariadb.com/kb/en/full-list-of-mariadb-options-system-and-status-variables/>
Alternatives:
1. Do not add `--log-bin`. Remove `--binlog-format` instead. This causes the least amount of change for existing installations.
Signed-off-by: Adam Monsen <haircut@gmail.com>
* remove --expire-logs-days=2 mariadb flag
This better aligns with recommendations in the Nextcloud documentation.
Also: the flag isn't necessary. There are already set times for cleanup: The MySQL and MariaDB documentation both state that binary logs will be purged on startup and flush/rotation.
Signed-off-by: Adam Monsen <haircut@gmail.com>
---------
Signed-off-by: Adam Monsen <haircut@gmail.com>
* enable mariadb auto upgrade
This fixes after-upgrade issues, for example:
[ERROR] Incorrect definition of table mysql.event: expected column 'definer' at position 3 to have type varchar(, found type char(141).
The upgrade only happens when necessary.
I also disabled the system database backup because I assume users create
and test their own backups.
Signed-off-by: Adam Monsen <haircut@gmail.com>
* use 1s instead of "yesplease"
Any nonzero value is valid for these environment variables.
Signed-off-by: Adam Monsen <haircut@gmail.com>
Signed-off-by: Adam Monsen <haircut@gmail.com>
With two declared "environment" compose only takes the second one. In
thi case it means that the letsencrypt companion and reverse-proxy can't
read the neede variables for the setup, making this example to return a
http 503 error.