Du borde inte behöva exponera 3306-porten.
Din setup.sh
skapar en annan användare än den som den ger bidrag till. Behållare är inte bra för att köra tjänster.
Det finns goda skäl för att använda de officiella bilderna.
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
Får dock inte så många fel/inlärningssaker :-)
Från ditt arkiv ser det ut som att du löst resten också (inkludera wordpress som är en officiell bild).