我正试图在AWS ec2机器上部署一个带有golang、mongoDB、docker-compose的应用程序.我准备好了我的图像和码头撰写文件,并在本地尝试,一切都很好,但是,在ec2机器上,我在同一个容器网络中出现了一个mongoDB连接错误。我的停靠者撰写文件是:
version: "3.5"
volumes:
mongo-data:
external: true
networks:
mongo-go:
external: true
services:
api:
image: repo/image:latest
container_name: api01
restart: unless-stopped
depends_on:
- mongodb
ports:
- "3000:3000"
networks:
- mongo-go
mongodb:
image: mongo
restart: unless-stopped
container_name: mongodb
ports:
- "27017:27017"
networks:
- mongo-go
volumes:
- mongo-data:/var/lib/mongo01我的mongo连接代码是:
func NewMongoClient(conn string) *mongo.Client {
client, err := mongo.NewClient(options.Client().ApplyURI("mongodb://mongodb:27017"))
if err != nil {
panic(err)
}
ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
defer cancel()
err = client.Connect(ctx)
if err != nil {
panic(err)
}
err = client.Ping(ctx, nil)
if err != nil {
panic(err)
}
return client
}我开始惊慌失措:
panic: server selection error: context deadline exceeded, current topology: { Type: Unknown, Servers: [{ Addr: mongodb:27017, Type: Unknown }, ] }
我的错误在哪里?谢谢!
我试图创建对接网络,并与mongoDB进行交流。但事情并没有发生
发布于 2022-11-26 04:27:11
https://stackoverflow.com/questions/74412870
复制相似问题