【问题标题】:Unable to connect to docker mysql using docker wordpress无法使用 docker wordpress 连接到 docker mysql
【发布时间】:2018-03-08 18:04:34
【问题描述】:

我正在尝试将 docker wordpress 容器连接到运行另一个容器的 MySQL 服务器。

MySQL 正在运行127.0.0.1:3306

WP:127.0.0.1:10000

如果我从Tinker 或普通的PHP 脚​​本运行$link = mysqli_connect("127.0.0.1", "root", "root", "wp_db");,它工作正常;我也可以使用具有上述设置的 Sequel Pro 连接到 docker MySQL。但是当我尝试将这些设置放在 WP 管理页面中以连接到数据库时,它说

建立数据库连接时出错

我有什么遗漏的吗?

【问题讨论】:

    标签: php mysql wordpress docker


    【解决方案1】:

    您的问题是 wp 在一个容器内,无法与另一个容器通信。

    您可以从主机到容器,但不能从一个容器内部到另一个容器内部。

    我建议你看看 docker-compose,它是一个用于定义和运行多容器 Docker 应用程序的工具,只需一个 docker-compose.yml 配置文件。

    您的问题的一个非常基本的示例可能是这样的

    wp:
      image: yourworpressimagefromdockerhub
      ports:
        - 10000:10000
      links:
        - mysql:mysql
    mysql:
      image: yourmysqlimagefromdockerhub
      ports:
        - 3306:3306
    

    “wp”容器知道带有“links”条目的“mysql”容器。

    然后,每当您想从 wp 容器调用 mysql docker 容器时,您只需使用“mysql”而不是“127.0.0.1”

    【讨论】:

    • >您的问题是 wp 在容器内,无法与另一个容器通信。没错,这就是问题所在。
    猜你喜欢
    • 2018-10-02
    • 2021-01-02
    • 1970-01-01
    • 2017-07-05
    • 2019-09-18
    • 1970-01-01
    • 2020-12-30
    • 2020-07-29
    • 1970-01-01
    相关资源
    最近更新 更多