从多个Docker容器中访问相同的mongoDB实例
我有两个容器(A和B)运行Node + MongoDB。 A
包含受限制的端点,需要使用有效的标记才能从数据库读取+写入。 B
将包含没有请求要求的公共端点,并允许任何人从数据库读取某些文件。
在A
和B
公开的端点应该与相同的数据库交互 。 谈到MongoDB,我不知道该怎么做。
我正在为容器A
的集合定义模式/模型,如下所示:
const mongoose = require('mongoose'); const Project = new mongoose.Schema({ ... });
从容器B
,我所要做的就是能够筛选数据库中的所有项目。 我不认为我应该在这个新的容器中创build相同的模式。
请注意, 容器B已成功连接到与容器A相同的数据库 。 这只是通过mongoose仔细筛选的问题。
TL; DR :我如何从容器B访问容器A的db,我没有注册任何模型? 我很新,所以任何信息将是有益的。
你可以使用docker-compose.yml
mongodb: image: mongo dockera: links: - mongodb:mongodb dockerb: links: - mongodb:mongodb
那么你containera和containerb将连接相同的MongoDB