Kontener domyślnie nie pozwala nikomu na logowanie się do serwera jako root spoza kontenera. Uniemożliwia to innym kontenerom (lub hostowi również) łączenie się z bazą danych (przy użyciu poświadczeń administratora). Możesz użyć flagi MYSQL_ROOT_HOST, aby przekazać IP kontenera lub hosta, który powinien mieć możliwość łączenia się z serwerem z poświadczeniami roota. Np. Aby zezwolić hostowi na połączenie, ustaw MYSQL_ROOT_HOST="172.17.0.1
".
Widzę też, że utworzyłeś tylko użytkownika root, ale w ciągu połączenia używasz userid=user
. Możesz użyć server=127.0.0.1
jako nazwa hosta.