2016-06-07 69 views
0

我有兩個運行Node + MongoDB的容器(A和B)。 A包含受限制的端點,需要有效的令牌才能從數據庫讀取+寫入。 B將包含沒有請求要求的公共端點,並允許任何人從數據庫中讀取某些文檔。從多個Docker容器訪問相同的mongoDB實例

AB中公開的端點應與同一個數據庫交互。當涉及到MongoDB時,我不確定如何執行此操作。

我定義集合的模式/模型容器A,像這樣:

const mongoose = require('mongoose'); 
const Project = new mongoose.Schema({ ... }); 

從容器B,所有我想要做的是能夠通過所有項目在數據庫中篩選。我不認爲我應該在這個新容器中創建相同的模式。

請務必注意,容器B已成功連接到與容器A相同的DB。這只是通過貓鼬仔細檢查它的問題。

TL; DR:如何從容器B訪問容器A的db,我沒有註冊任何模型?我很新,所以任何信息都會有幫助。

+0

你應該運行在另一個容器中,並鏈接蒙戈(使用' - 鏈接')兩個節點容器,這將是更清潔的解決方案 – Yerken

回答

1

可以使用泊塢窗,compose.yml像

mongodb: image: mongo dockera: links: - mongodb:mongodb dockerb: links: - mongodb:mongodb

那麼你containera和containerb將連接相同的MongoDB