欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

如何解決Docker連接本地MySQL服務(wù)失敗的問題

 更新時間:2025年06月13日 15:00:07   作者:我想要身體健康  
這篇文章主要介紹了如何解決Docker連接本地MySQL服務(wù)失敗的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

問題描述

在學(xué)習(xí) Docker 和 Go 時,遇到了一個連接 MySQL 數(shù)據(jù)庫失敗的問題。

具體情況如下:

使用以下命令運行 Docker 容器:

docker run --rm -p 8080:8080/tcp --env-file .env my-project:latest

.env 文件中的內(nèi)容如下:

DB_HOST=127.0.0.1
DB_USERNAME=root
DB_NAME=mydbs
DB_PASS=root123
AUTH_GEN_URL=https://api.learning.mydbs.id

在 Windows 上使用 Docker Desktop,報錯信息為:dial tcp 127.0.0.1:3306: connect: connection refused

這意味著在 IP 127.0.0.1 和端口 3306 上沒有數(shù)據(jù)庫服務(wù)在監(jiān)聽。

問題分析

在默認的網(wǎng)絡(luò)模式下,127.0.0.1 指的是容器內(nèi)部的地址,而不是主機的地址。

因此,當(dāng)容器嘗試連接 127.0.0.1:3306 時,它實際上是在連接容器自身的 3306 端口,而不是主機上的 MySQL 服務(wù)。

解決方法

對于 Windows 和 Mac 用戶

在 Windows 和 Mac 上,可以使用 host.docker.internal 來代替 127.0.0.1。

這樣可以確保容器內(nèi)部的服務(wù)正確連接到運行在主機上的 MySQL 實例。

修改后的 .env 文件如下:

DB_HOST=host.docker.internal
DB_USERNAME=root
DB_NAME=mydbs
DB_PASS=root123
AUTH_GEN_URL=https://api.learning.mydbs.id

這樣修改后,再次運行 Docker 容器,問題應(yīng)能得到解決。

對于 Linux 用戶

在 Linux 上,解決這個問題更加簡單,只需要在運行 Docker 容器時添加 --network="host" 參數(shù)即可。

這樣,容器將直接使用主機的網(wǎng)絡(luò),127.0.0.1 將指向主機自身。

命令如下:

docker run --rm --network="host" --env-file .env my-project:latest

總結(jié)

以上是解決 Docker 連接本地 MySQL 服務(wù)失敗問題的詳細步驟。在不同操作系統(tǒng)上,解決方法有所不同:

  • Windows 和 Mac 用戶可以使用 host.docker.internal
  • Linux 用戶可以使用 --network="host" 參數(shù)。

通過以上步驟,相信你已經(jīng)能夠成功解決 Docker 容器中無法連接本地 MySQL 數(shù)據(jù)庫的問題。

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 防火墻控制Docker端口開放與關(guān)閉

    防火墻控制Docker端口開放與關(guān)閉

    本文主要介紹了防火墻控制Docker端口開放與關(guān)閉,通過實例演示了如何配置防火墻規(guī)則來實現(xiàn)對Docker端口的控制,具有一定的參考價值,感興趣的可以了解一下
    2023-12-12
  • 如何使用docker部署Dashdot工具箱

    如何使用docker部署Dashdot工具箱

    dashdot是一個簡潔清晰的服務(wù)器數(shù)據(jù)儀表板,基于React實現(xiàn) ,主要是顯示操作系統(tǒng)、進程、存儲、內(nèi)存、網(wǎng)絡(luò)這五個的數(shù)據(jù),這篇文章主要介紹了如何使用docker部署Dashdot工具箱,需要的朋友可以參考下
    2024-02-02
  • 以示例講解Clickhouse Docker集群部署以及配置

    以示例講解Clickhouse Docker集群部署以及配置

    這篇文章主要介紹了Clickhouse Docker集群部署及配置,示例講解的非常詳細,希望可以幫助到有需要的小伙伴
    2021-08-08
  • 使用Docker安裝和配置 MySQL 數(shù)據(jù)庫的過程詳解

    使用Docker安裝和配置 MySQL 數(shù)據(jù)庫的過程詳解

    本文將介紹如何使用Docker來安裝和配置MySQL數(shù)據(jù)庫,以便在開發(fā)和測試環(huán)境中快速搭建MySQL實例,本文也是介紹兩種方式進行分別是“使用鏡像安裝”、“使用Docker Compose安裝”,感興趣的朋友一起看看吧
    2023-12-12
  • 基于Docker部署Dubbo+Nacos服務(wù)的過程

    基于Docker部署Dubbo+Nacos服務(wù)的過程

    這篇文章主要介紹了基于Docker部署Dubbo+Nacos服務(wù),本文介紹基于?Docker?部署一套?Dubbo?+?Nacos?的微服務(wù)環(huán)境,并解決容器里的?IP?及端口的訪問問題,需要的朋友可以參考下
    2023-02-02
  • 基于Docker+Jenkins實現(xiàn)自動化部署的方法

    基于Docker+Jenkins實現(xiàn)自動化部署的方法

    這篇文章主要介紹了基于Docker+Jenkins實現(xiàn)自動化部署,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-07-07
  • docker部署RustDesk自建服務(wù)器的小結(jié)

    docker部署RustDesk自建服務(wù)器的小結(jié)

    本文詳細介紹了如何使用Docker部署RustDesk自建服務(wù)器,本文給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2024-12-12
  • Docker 搭建私有倉庫(registry、harbor)

    Docker 搭建私有倉庫(registry、harbor)

    這篇文章主要介紹了Docker 搭建私有倉庫(registry、harbor),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-06-06
  • Docker基礎(chǔ)教程之Dockerfile語法詳解

    Docker基礎(chǔ)教程之Dockerfile語法詳解

    這篇文章主要給大家介紹了關(guān)于Docker基礎(chǔ)教程之Dockerfile語法的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用Docker具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • 釋放Docker占用的存儲空間的幾種方法

    釋放Docker占用的存儲空間的幾種方法

    隨著Docker的廣泛應(yīng)用,我們經(jīng)常會遇到Docker占用過多存儲空間的問題,這可能是由于頻繁的鏡像拉取、容器創(chuàng)建和刪除等操作導(dǎo)致的,本文將介紹幾種方法來有效釋放Docker占用的存儲空間,需要的朋友可以參考下
    2024-06-06

最新評論