簡體   English   中英

docker wordpress 容器無法連接到 mysql 容器

[英]docker wordpress container can't connect to mysql container

我不僅不知道為什么這不起作用,而且不知道如何進一步解決它。 我是 docker 的新手,所以可能很明顯,但我找不到。 我確實在這里查看了一些其他鏈接,這些鏈接可能被視為“重復問題”,但沒有任何幫助。

我的游樂場設置:

mysql 容器名為:“db”
phpmyadmin 容器名為:phpmyadmin
wordpress 容器名為:域博客

所有容器都在一個橋接網絡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

我試過的:

  • 我可以使用rootpassword從 phpmyadmin 通過hostip:8080root身份登錄。
  • 我可以使用來自testedpassword的測試密碼以domain_user身份登錄。
  • 確認我可以在以 domain_user 身份登錄時添加新表。
  • 我已經啟動了一個 ubuntu 容器並安裝了網絡工具,可以 ping 所有容器。
  • 我直接在 wordpress 容器上安裝了iputils-ping並且可以使用 ping db ping db Ping 命中,但也確認數據庫正在解析到正確的 ip 地址。
  • cat wp-config.php顯示用戶、主機(db:3306)、密碼和數據庫都按照我的預期傳遞。

當我創建新的用戶/密碼、數據庫並將用戶權限添加到該數據庫時,我使用了 phpmyadmin。 用戶設置為從%登錄。

我無法訪問數據庫的錯誤是嘗試通過hostip:8081導航到博客時出現確切錯誤: Error establishing a database connection時出錯

解決了它,對此感到相當愚蠢,但本着教育的精神......

當我通過 phpmyadmin 將用戶名/密碼輸入 mysql 時,管理界面中的默認設置是使用Caching sha2 authentication

我使用本機 Mysql 身份驗證重置密碼...現在可以正常工作了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM