【发布时间】:2020-06-07 02:39:17
【问题描述】:
这是我的节点应用程序的一部分
app.configure('development', function() {
app.set('db-uri', 'mongodb://localhost/nodepad-development');
app.use(express.errorHandler({ dumpExceptions: true }));
app.set('view options', {
pretty: true
});
});
app.configure('test', function() {
app.set('db-uri', 'mongodb://localhost/nodepad-test');
app.set('view options', {
pretty: true
});
});
app.configure('production', function() {
app.set('db-uri', 'mongodb://localhost/nodepad-production');
});
编辑为
app.set('db-uri', 'mongodb://mongoDB:27017/nodepad-development');
还是同样的错误。 我已经为在本地主机上运行的节点应用程序创建了容器,但我无法将其连接到另一个 mongo 容器,因此我无法向应用程序发出 POST 请求。
这是我的 docker compose 文件
version: '3'
services:
apptest:
container_name: apptest
restart: always
image: ekamzf/nodeapp:1.1
ports:
- '8080:8080
depends_on:
- mongoDB
mongoDB:
container_name: mongoDB
image: mongo
volumes:
- ./data:/usr/src/app
ports:
- '27017:27017'
当我尝试在我的节点应用程序中注册帐户详细信息时遇到的错误是
Error: Timeout POST /users
at null._onTimeout (/usr/src/app/node_modules/connect-timeout/index.js:12:22)
at Timer.listOnTimeout [as ontimeout] (timers.js:110:15)
我错过了什么? 基本上,我应该如何将这种类型的代码与 mongodb 连接起来? 'db-uri' 的作用是什么?
【问题讨论】:
标签: node.js mongodb docker docker-compose database-connection