当前位置: 首页 > 知识库问答 >
问题:

无法连接到docker mongodb

刘令
2023-03-14

您似乎试图通过本机驱动程序端口上的HTTP访问MongoDB。

而且日志显示我的mongodb是健康的。我想是我试图通过浏览器访问的最后一行。

2017-01-25T21:11:13.509+0000 I JOURNAL[initandlisten]JOURNAL dir=/data/db/Journal2017-01-25T21:11:13.509+0000 I JOURNAL[initandlisten]恢复:不存在日记文件,不需要恢复2017-01-25T21:11:13.546+0000 I JOURNAL[耐久性]耐久性线程开始2017-01-25T21:11:13.547+0000 I JOURNAL[日记作者]日记作者线程开始2017-01-25T21:11:13.568+0000 I CONTROL[initandlisten]MongoDB开始:pid=1 port=27017 dbpath=/data/db 64位主机=150c248f4cc7 2017-01-25t21:11:13.568+0000 I控件[initandlisten]db version v3.0.2 2017-01-25t21:11:13.568+0000 I控件[initandlisten]git version:6201872043ECBBC0A4CC169B5482DCF385FC464F 2017-01-25T21:11:13.569+0000 I CONTROL[initandlisten]OpenSSL版本:OpenSSL 1.0.1e 2013年2月11日2017-01-25T21:11:13.569+0000 I CONTROL[initandlisten]构建信息:Linux ip-10-171-120-232 3.2.0-4-AMD64#1 SMP Debian 3.2.46-1 x86_64 boost_lib_version=1_49 2017-01-25T21:11:13.569+0000 I控制[initandlisten]分配器:tcmalloc 2017-01-25T21:11:13.569+0000 I控制[initandlisten]选项:{}2017-01-25T21:11:13.573+0000 I网络[initandlisten]等待端口27017上的连接2017-01-25T21:11:17.843+0000 I网络[initandlisten]从172.20.0.1:44148#1(1个连接现在打开)2017-01-25T21:11:17.843+0000I网络[initandlisten]连接接受172.20.0.1:44146#2(2个连接现在打开)2017-01-25T21:11:17.853+0000I网络[conn2]结束连接172.20.0.1:44146(1个连接现在打开)2017-01-25T21:11:17.998+0000I网络[conn1]结束连接172.20.0.1:44148(0个连接现在打开)

所以看起来我的mongodb正在运行。当我在我的节点应用程序中尝试访问它时,我得到了。

{mongoError:第一次在池连接时未能连接到服务器[localhost:27017]。(/usr/src/app/node_modules/mongodb-core/lib/topologies/server.js:326:35)在emitOne(events.js:96:13)在pool.emit(events.js:188:7)在连接。(/usr/src/app/node_modules/mongodb-core/mongodb-core/lib/connection/pool.js:270:12)在(/usr/src/app/node_modules/mongodb-core/lib/connection/connection.js:175:49)位于object.onceWrapper(events.js:290:19)位于emitOne(events.js:96:13)名称:“mongoerror',消息:”第一次连接时连接到服务器[localhost:27017]失败“}

我的代码试图访问mongodb

const express = require('express');
const gh = require('./src/fetch');
const MongoClient = require('mongodb').MongoClient;

const url = 'mongodb://localhost:27017/myApp';

// Constants
const PORT = 8888;

// App
const app = express();

app.get('/', function (req, res) {
    MongoClient.connect(url, function (err, db) {
        if (err) {
            console.log(err);
        } else {
            console.log("Connected correctly to server");
            db.close();
        }

    });
    res.send('Hello world\n');
});

app.listen(PORT);
console.log('Running on http://localhost:' + PORT);

我的码头装潢是这样的。

version: '2'
services:
  web:
    image: gh-api
    ports:
      - "8888:8888"
    environment:
      - KEY=abc
    restart: always
    links:
      - mongoDB
    depends_on:
          - mongoDB
  mongoDB:
      image: mongo:3.0.2
      ports:
        - "27017:27017"

用于gh-api的Dockerfile

FROM node:7.4-onbuild

EXPOSE 8888

共有1个答案

陈瀚玥
2023-03-14

您是否可以从以下位置更改mongodb的url:

常量url='mongoDb://localhost:27017/myapp';

 类似资料:
  • 问题内容: 我正在尝试使用Ruby on Rails运行Selenium的示例脚本。我必须使用代理运行它。这是我的代码: 我收到以下错误: 有人能帮我吗…?我已经尝试了好几个小时,却找不到问题…真的不知道该怎么办。 环境: Ubuntu 16.04 LTS,Firefox 45.0,rbenv 2.3.1 另一个问题:有人知道Selenium + Ruby on Rails的示例吗?我找不到真正好

  • 我正在尝试连接到MySQL服务器,但出现无法处理的错误。 java.sql.SQLNonTransientConnectionException:无法创建到数据库服务器的连接。尝试重新连接3次。放弃。com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:110)com.mysql.cj.jdbc.excepti

  • 我真的想不通为什么我不能用下面的代码连接到我的Django项目内的JQuery。你能告诉我是什么原因吗?多谢! null null

  • 我正在尝试使用Android studio提供的工具将我的Android应用程序连接到firebase,但我面临着很多麻烦。 我已经尝试更新依赖到最新的最新的谷歌服务,但错误仍然存在,显示的错误是无法解析Android应用模块的Gradle配置。解决分级生成问题和/或重新同步。 分级/应用程序a

  • 我正在开发Selenium,目前我有一个连接到两个运行linux和所有浏览器的虚拟机的集线器。 我能够启动浏览器,直到它突然停止。火狐或任何其他浏览器都不会启动。我得到以下错误。 45000 ms后无法连接到端口7055上的主机127.0.0.1。 我运行Selenium服务器独立2.26与火狐16.0.2. 请帮忙。

  • Q-我安装了git以获取最新版本的Angular。当我尝试运行时 我连接到github 443错误失败 我甚至试过 这使我无法连接,没有错误消息。 我在公司防火墙后面。转到控制面板时,我看不到我的代理详细信息- 我终于做到了。我将更新我所采取的程序,以便只是想编译我所做的所有步骤,以使它正常工作

  • 我试图使用将一些更改推送到github,但一段时间后它显示错误 我刚刚创建了回购协议,已经promise了两次。我通过Mac OS X Yosemite 10.10.2中的家庭WiFi和操作系统连接到互联网。

  • 输入JDBC的用户名:hive2://localhost:10001/default:输入JDBC的密码:hive2:/localhost:10001/default:17/08/19 09:25:14[main]:警告JDBC.hiveConnection:无法连接到localhost:10001无法打开到HS2服务器的连接。请检查服务器URI,如果URI正确,请让管理员检查服务器状态。错误:无