在这里,我不仅茫然不解为什么不起作用,而且不知道如何解决它。我是Docker的新手,所以可能很明显,但我找不到它。我确实在这里查看了一些其他链接,这些链接被视为“重复问题”,没有任何帮助。
我的游乐场设置:
命名为mysql的容器:“ db”
名为phpmyadmin的容器:phpmyadmin
名为“ wordpress”的容器:domain-blog
所有容器都在桥接网络中 docker0
在此阶段,我将单独启动所有容器,但是在运行wordpress之前,请确保数据库已启动并正在运行。
启动wordpress容器的字符串:
docker run --name="domain-blog" -d \
-e WORDPRESS_DB_HOST=db:3306 \
-e WORDPRESS_DB_USER=domain_user \
-e WORDPRESS_DB_PASSWORD=testedpassword \
-e WORDPRESS_DB_NAME=domain_blog \
-e WORDPRESS_TABLE_PREFIX=astring \
--network=docker0 \
-p 8081:80 \
--restart always \
wordpress
我尝试过的事情:
root
从phpmyadmin中以rootpassword
身份登录,并以hostip:8080
登录。
domain_user
以testedpassword
的身份登录。iputils-ping
直接安装在wordpress容器上,可以使用db
ping ping db
。 Ping正在运行,但还确认数据库正在解析到正确的IP地址。cat wp-config.php
显示用户,主机(db:3306),密码和数据库都按照我的期望通过了。当我创建新的用户/密码,数据库并将用户的权限添加到该数据库时,我使用了phpmyadmin。用户设置为从%
登录。
我无法访问数据库时遇到的错误是尝试通过hostip:8081
导航到博客时的确切错误:Error establishing a database connection
答案 0 :(得分:0)
解决了这个问题,对此感到有些愚蠢,但本着教育的精神...
当我通过phpmyadmin输入用户名/密码到mysql中时,管理界面中的默认值是使用Caching sha2 authentication
。
我使用本机Mysql身份验证重设了密码...现在没有问题了。