gpt4 book ai didi

docker - 尝试使用 docker compose 文件连接 redis 时连接被拒绝

转载 作者:IT王子 更新时间:2023-10-29 02:12:14 26 4
gpt4 key购买 nike

我在尝试使用 redis-golang 连接到 Redis 时遇到问题司机。这是我的 docker-compose.yml 文件:

version: "3"

services:
driver:
build: ./API-Golang
command: go run app.go
volumes:
- ./API-Golang:/app
ports:
- "8080:8080"
depends_on:
- db
- redis
links :
- redis
- db
redis:
image: redis
container_name: redis
ports: ["6379:6379"]
db:
image: mongo:3.4.2
container_name: mongodb
ports : ["27017:27017"]

这是我尝试连接到 redis 的代码 (API-Golang/database/allSystem.go):

redisConn := RedisHost{
Address: "localhost:6379",
Password: "",
DB: 0,
}

redisConnection, err := redisConn.Connect()
if err != nil {
panic(err)
}

我已经尝试将主机的 localhost 更改为 redis 但它仍然不起作用。这是错误:

driver_1  | panic: dial tcp [::1]:6379: getsockopt: connection refused
driver_1 |
driver_1 | goroutine 1 [running]:
driver_1 | github.com/Gujarats/API-Golang/database.SystemConnection(0x48)
driver_1 | /go/src/github.com/Gujarats/API-Golang/database/allSystem.go:32 +0x3d3
driver_1 | main.main()
driver_1 | /go/src/github.com/Gujarats/API-Golang/app.go:24 +0x34
driver_1 | exit status 2

知道哪里出了问题吗?

Source Code

最佳答案

使用depends_on时有几点需要注意:

  • depends_on 不会等待 db 和 redis 在启动 web 之前“准备好” - 只会等到它们已经启动。如果您需要等待服务准备就绪,请参阅 Controlling startup order有关此问题的更多信息以及解决该问题的策略。
    • 版本 3 不再支持 depends_on 的条件形式。
  • deploying a stack in swarm mode 时 depends_on 选项被忽略使用第 3 版 Compose 文件。

关于docker - 尝试使用 docker compose 文件连接 redis 时连接被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43039501/

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