OSX Docker / WordPress / MySQL – 连接错误:(1130)主机'xxx.xxx.xxx.xxx'不允许连接到这个MariaDB服务器

这个问题不同于其他类似的问题,因为它涉及在OS X上的Docker容器中运行,之前一直运行正常,现在正在失败。

按照这里的说明:

https://medium.com/@tatemz/local-wordpress-development-with-docker-3-easy-steps-a7c375366b9

我能够快速获得本地WordPress安装并运行,这非常棒。

今天,当我启动它,有一个连接拒绝,看起来像这将是非常简单的解决,如果我能弄清楚以下错误消息的两件事情:

MySQL Connection Error: (1130) Host '172.19.0.3' is not allowed to connect to this MariaDB server Warning: mysqli::mysqli(): (HY000/1130): Host '172.19.0.3' is not allowed to connect to this MariaDB server in - on line 22 

我需要弄清的两件事是:

  1. “第22行”在什么文件? 这是一个configuration文件? 什么是文件名?
  2. 在像这样的Mac / Docker部署中,这个文件的path是什么?

docker容器目录只包含一个WordPress安装目录。 在那个目录中似乎没有任何与MySQL / MariaDB相关的东西。 我已经阅读了大量关于Mac的Mac部署文档以及configuration文件的位置,但是在Docker容器中,这是一个不同的野兽。 我find的文档不适用。

我已经考虑SSH到一个docker集装箱(我是一个在Docker婴儿),但我甚至不知道,如果这是你做的事情。

你的问题可能是在WordPress容器之前启动的MySQL容器。 尝试将depends_on标记添加到您的docker-compose.yml文件中,并删除链接标记。 你也想添加重新启动:总是到两个容器。

  my-wp: image: wordpress volumes: - ./:/var/www/html depends_on: - my-wpdb restart: always ports: - "8080:80" environment: WORDPRESS_DB_PASSWORD: ChangeMeIfYouWant 

您可以运行以下命令查看错误日志:

 docker logs -f CONTAINERNAME >/dev/null 

如果你想在你的容器里打开一个shell,你可以运行:

 docker exec -ti CONTAINERNAME /bin/bash