gpt4 book ai didi

mysql - panic : dial tcp 127. 0.0.1:3306: 连接: 连接被拒绝

转载 作者:行者123 更新时间:2023-11-29 09:36:08 25 4
gpt4 key购买 nike

我正在尝试使用 golang gin gorm 从 docker 连接 mysql 服务器。

构建本身已经成功,但是如标题所示,出现了以下错误。

panic: dial tcp 127.0.0.1:3306: connect: connection refused

尝试以这种方式连接

func dbConnect() *gorm.DB {
db, err := gorm.Open("mysql", "docker:password@/godocker")

if err != nil {
panic(err.Error())
}

return db
}

  • docker-compose.yml
db:
image: mysql:5.7.26
environment:
MYSQL_USER: docker
MYSQL_ROOT_PASSWORD: password
MYSQL_PASSWORD: password
MYSQL_DATABASE: godocker
ports:
- "3306:3306"

点击docker-compose ps命令的结果

      Name                   Command             State                 Ports
------------------------------------------------------------------------------------------
gin-docker_api_1 /bin/sh -c gin -i run Up 0.0.0.0:3001->3001/tcp
gin-docker_db_1 docker-entrypoint.sh mysqld Up 0.0.0.0:3306->3306/tcp, 33060/tcp

谢谢

最佳答案

您应该通过容器名称进行连接

db:
image: mysql:5.7.26
container_name: godockerDB
environment:
MYSQL_USER: docker
MYSQL_ROOT_PASSWORD: password
MYSQL_PASSWORD: password
MYSQL_DATABASE: godocker
ports:
- "3306:3306"

然后就可以通过容器名称进行连接

func dbConnect() *gorm.DB {
db, err := gorm.Open("mysql", "docker:password@tcp(godockerDB)/godocker")

if err != nil {
panic(err.Error())
}

return db
}

关于mysql - panic : dial tcp 127. 0.0.1:3306: 连接: 连接被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57566060/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com