mysql - Docker,无法将 WordPress 连接到 MySQL

标签 mysql wordpress docker

我正在尝试将两个容器链接在一起,我能够将 PhpMyAdmin 容器与 MySQL 容器连接,但当我使用 WordPress 容器时似乎没有任何效果。

我尝试了不同的方法,实际上我正在使用这个命令来运行 MySQL 容器:

sudo docker run --name sql -e MYSQL_ROOT_PASSWORD=pass mysql

这个用于设置 WordPress 容器:

sudo docker run --name wpress -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_PASSWORD=pass -e WORDPRESS_DB_HOST=172.17.0.2 -p 8085:80 --link sql:mysql wordpress

MySQL 容器工作正常,但我从 wpress 得到了以下输出:

MySQL Connection Error: (2054) The server requested authentication method unknown to the client

Warning: mysqli::__construct(): The server requested authentication method unknown to the client [caching_sha2_password] in Standard input code on line 22

我做错了什么?

编辑:

在一些测试中,我能够通过向 WORDPRESS_DB_HOST 添加端口来将 wpress 容器连接到 sql 容器,这将给出:

sudo docker run --name wpress -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_PASSWORD=pass -e WORDPRESS_DB_HOST=172.17.0.2:3306 -p 8085:80 wordpress

(我还删除了 --link 选项,没有它它也能工作)。 所以它起作用了2-3次,但它不再起作用了。

最佳答案

好像是版本错误。使用具有不同版本 mysql 的镜像,例如 mysql:5.7,它应该可以工作。

关于mysql - Docker,无法将 WordPress 连接到 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53574629/

相关文章:

django - 为什么 gunicorn 会悬卡在这种配置中?

python - SQLAlchemy 错误 MySQL 服务器已消失

php - 使用 PhpActiveRecord 检查 NULL 值

php - Wordpress get_post_meta - 如何检查多个 key ?

html - 如何将菜单的背景颜色更改为透明?

jenkins - 使用 Docker 运行 Jenkins master 和 slave

MySQL - 在没有 LIMIT 或 JOIN 的情况下选择指定搜索的最大值

php - 如何在 Laravel 中定义三向多对多关系?

php - 已阻止保存帖子

nginx - 使用HAproxy在Mesos集群中负载均衡Docker容器