我试图将两个容器连接在一起,我能够将一个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 wordpressMySQL容器可以正常工作,但是我有来自wpress的输出:
MySQL连接错误:(2054)服务器请求客户端未知的身份验证方法 警告: mysqli::__construct():服务器请求第22行标准输入代码中的客户端caching_sha2_password未知的身份验证方法
我做错什么了?
编辑:
在一些测试期间,通过向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(我还删除了-链接选项,它没有使用)。所以它可以工作2-3次,但它不再起作用了。
发布于 2018-12-05 15:22:01
这似乎是版本错误。例如,使用mysql的不同版本的映像mysql:5.7,它应该可以工作。
发布于 2019-05-14 14:34:48
我也有同样的问题/错误。
这就是我必须为mysql和wordpress做的事情:
docker run --name wordpressdb -e MYSQL_ROOT_PASSWORD=password -d mysql
docker exec -it wordpressdb bash
#inside run:
mysql -uroot -ppassword
#paste
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
exit
exit
docker run --name wordpress -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_PASSWORD=password -p 8080:80 --link wordpressdb:mysql -d wordpresshttps://stackoverflow.com/questions/53574629
复制相似问题