Kết nối '[2002] bị từ chối "có nghĩa là bạn có thể truy cập vào máy chủ cơ sở dữ liệu, nhưng bạn không có quyền truy cập phù hợp cho người dùng (trong trường hợp của bạn là quản trị viên). Theo mặc định, mariadb có người dùng root với mật khẩu được cung cấp bởi MYSQL_ROOT_PASSWORD và người dùng này có thể kết nối từ bất kỳ máy chủ nào (%).
Nếu bạn muốn sử dụng đăng nhập quá mức vào cơ sở dữ liệu của mình, bạn phải tạo nó trong máy chủ cơ sở dữ liệu với quyền cấp phép trên cơ sở dữ liệu từ các vị trí đã chọn.
Vấn đề ở đây là bạn đã đặt tên máy chủ cơ sở dữ liệu của mình là 'mysql' (tên dịch vụ trong tệp docker-soạn). Nhưng theo mặc định phpmyadmin cố gắng kết nối với máy chủ cơ sở dữ liệu có tên 'db'. Thêm PMA_HOST: mysql
trong phần môi trường của dịch vụ phpmyadmin sẽ giải quyết sự cố này.
Tôi nghĩ rằng MYSQL_USERNAME và PMA_ARBITRARY vô dụng nếu bạn làm việc với cấu hình mặc định (kết nối với root tới máy chủ cơ sở dữ liệu của bạn)