首頁 > 後端開發 > Golang > 初始化資料庫失敗,出現錯誤撥號 tcp 127.0.0.1:3306: connect: 連線被拒絕 問題

初始化資料庫失敗,出現錯誤撥號 tcp 127.0.0.1:3306: connect: 連線被拒絕 問題

WBOY
發布: 2024-02-06 10:42:04
轉載
1163 人瀏覽過

初始化数据库失败,出现错误拨号 tcp 127.0.0.1:3306: connect: 连接被拒绝 问题

問題內容

我正在學習 docker,現在就開始吧 但是當我用這個 docker 運行時我遇到了問題 docker run --rm -p 8080:8080/tcp --env-file .env my-project:latest 這是我的一些 .env 程式碼。我在 Windows 上使用 docker 桌面,是否無法在 Windows 中的 localhost 上執行 docker?

DB_HOST=127.0.0.1
DB_USERNAME=root
DB_NAME=mydbs
DB_PASS=root123
AUTH_GEN_URL=https://api.learning.mydbs.id
登入後複製

有人知道嗎?任何答案將不勝感激

謝謝你


正確答案


問題是,當您啟動容器時,它會嘗試連接到容器內的127.0.0.1:3306 而不是主機,因此您會收到錯誤,因為連線被拒絕,因為連接埠3306 上沒有任何內容可以執行容器中的本機。

對於 Windows 和 Mac,可以使用 host.docker.internal 而不是 127.0.0.1 輕鬆修復此問題。這可確保容器內執行的服務正確連接到主機上執行的 MySQL 執行個體。

對於 Linux,它甚至更簡單,因為您所要做的就是將 --network="host" 選項傳遞給 docker run 命令

以上是初始化資料庫失敗,出現錯誤撥號 tcp 127.0.0.1:3306: connect: 連線被拒絕 問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:stackoverflow.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板