Phpmyadmin 无法连接到 macOS 上的 mysql 数据库 (docker-compose.yml)

Phpmyadmin won't connect to mysql database on macOS (docker-compose.yml)

以下代码适用于 Windows 11,但不适用于某些基于 Intel 的 macOS 系统(在本例中为 High Sierra)。

version: "3.3"

services:
    web:
        image: nginx:latest
        ports:
            - 8080:80
        volumes:
            - ./app:/app
            - ./default.conf:/etc/nginx/conf.d/default.conf
        links:
            - php
        networks:
            - wmnet

    php:
        image: php:fpm
        volumes:
            - ./app:/app
        networks:
            - wmnet
        command:
            - /bin/sh
            - -c
            - |
                docker-php-ext-install mysqli
                php-fpm

    db:
        image: mysql:latest
        command:
            --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci 
            --default-authentication-plugin=mysql_native_password
        environment:
            MYSQL_ROOT_HOST: '%'
            MYSQL_ROOT_USER: root
            MYSQL_ROOT_PASSWORD: root
            MYSQL_DATABASE: wm
            MYSQL_USER: user1
            MYSQL_PASSWORD: user1
        networks:
            - wmnet

    phpmyadmin:
        depends_on:
            - db
        image: phpmyadmin
        links:
            - db
        ports:
            - 5502:80
        environment:
            PMA_HOST: db
            MYSQL_ROOT_PASSWORD: root
            PMA_USER: user1
            PMA_PASSWORD: user1 
        networks:
            - wmnet
networks:
    wmnet:

这里的概念是 运行 通过 docker-compose.yml 来简化本地开发中没有经验的 Docker 用户的调试。现在我已经到了我对 docker 了解不够的地步,为什么代码突然 运行s 在某些系统上而不是其他系统上。

一些额外的信息:容器 运行 没有抛出任何错误,Phpmyadmin 只得到它找不到 SQL 服务器的错误。

看来,您需要删除所有内容。 (在这种情况下 Docker Dekstop)

  • 数量
  • 图片
  • 容器

之后它工作得很好。