Die '[2002] Verbindung abgelehnt' bedeutet, dass Sie den Datenbankserver erreichen können, aber Sie haben keine Zugriffsrechte für den Benutzer (in Ihrem Fall Admin). Standardmäßig hat mariadb einen Root-Benutzer mit dem Passwort von MYSQL_ROOT_PASSWORD und dieser Benutzer kann sich von jedem Server (%) verbinden.
Wenn Sie ein Overlogin für Ihre Datenbanken verwenden möchten, müssen Sie es auf dem Datenbankserver mit der entsprechenden Berechtigung für Datenbanken von ausgewählten Standorten erstellen.
Das Problem hierbei ist, dass Sie Ihren Datenbankserver als „mysql“ (Dienstname in der docker-compose-Datei) benannt haben. Aber standardmäßig versucht phpmyadmin, sich mit einem Datenbankserver namens „db“ zu verbinden. Hinzufügen von PMA_HOST: mysql
im Umgebungsbereich des phpmyadmin-Dienstes wird dieses Problem lösen.
Ich denke, dass MYSQL_USERNAME und PMA_ARBITRARY nutzlos sind, wenn Sie mit der Standardkonfiguration arbeiten (Verbindung mit root zu Ihrem Datenbankserver)