我有这个简单的docker-compose.yml文件:version: '3.8'services: bot: build: dockerfile: Dockerfile context: . links: - redis depends_on: - redis redis: image: redis:7.0.0-alpine ports: - "6379:6379" environment: - REDIS_REPLICATION_MODE=master restart: always volumes: - cache:/data command: redis-servervolumes: cache: driver: local这就是bot(在 Go 中)连接到的方式redis:import "github.com/go-redis/redis/v8"func setRedisClient() { rdb = redis.NewClient(&redis.Options{ Addr: "redis:6379", Password: "", DB: 0, })}bot文件:FROM golang:1.18.3-alpine3.16WORKDIR /go/src/bot-goCOPY . .RUN go build .RUN ./bot-go但是当我跑步时,docker-compose up --build我总是得到:panic: dial tcp: lookup redis on 192.168.65.5:53: no such hostredis无论我对主机或docker-compose文件进行什么更改,都不会看到主机。当我将客户端配置为本地时,该应用程序在没有 Docker 的情况下也能正常工作。我到底做错了什么?
1 回答

临摹微笑
TA贡献1982条经验 获得超2个赞
问题是 bot-go 图像永远不会停止构建。在 Dockerfile 中更改RUN ./bot-go
为,一切都会正常工作。CMD [ "./bot-go" ]
- 1 回答
- 0 关注
- 134 浏览
添加回答
举报
0/150
提交
取消