Sie sollten Port 3306 nicht offenlegen müssen.
Ihre setup.sh
erstellt einen anderen Benutzer als den, dem es Berechtigungen erteilt. Container eignen sich nicht zum Ausführen von Diensten.
Es spricht einiges dafür, die offiziellen Bilder zu verwenden.
version: '3'
services:
mariadb:
image: mariadb:10.5.11
volumes:
- ~/data/maria:/var/lib/mysql
restart: always
environment:
MARIADB_USER: "${MARIA_LOGIN}"
MARIADB_PASSWORD: "${MARIA_PASS}"
MARIADB_DATABASE: wordpress
Bekomme aber nicht so viele Fehler/Lernsachen :-)
Aus Ihrem Repository sieht es so aus, als hätten Sie auch den Rest gelöst (einschließlich WordPress, das ein offizielles Image ist).