【问题标题】:Install node.js and mongoDB on Cubietruck在 Cubietruck 上安装 node.js 和 mongoDB
【发布时间】:2015-05-08 03:57:31
【问题描述】:

我在我的Cubieboard 上安装了Cubian 操作系统。 然后我使用tutorial 安装了 node.js 和 mongoDB。 看来 node.js 工作正常。我可以启动 mongod 服务,但我有几个问题:

  1. 我无法执行 mongo shell:找不到命令
  2. localhost:27017(与http://127.0.0.1:27017/相同不可用)
  3. 我无法在我的 node.js 代码中连接到 mongoDB
  4. npm install 产生很多错误,我无法使用此命令安装所需的模块(但我仍然可以使用nmp install module_name 命令)

我的测试 node.js 代码:

var express = require('express');

// Mongoose import
var mongoose = require('mongoose');

var db = mongoose.connection;

db.on('error', console.error);
db.once('open', function() {
  // Create your schemas and models here.
    console.log('Connected');
});


// Mongoose connection to MongoDB (ted/ted is readonly)
mongoose.connect('mongodb://127.0.0.1:27017/test', function (error) {
    if (error) {
        console.log(error);
    }
});

// Mongoose Schema definition
var Schema = mongoose.Schema;
var UserSchema = new Schema({
    first_name: String,
    last_name: String,
    email: String
});

// Mongoose Model definition
var User = mongoose.model('users', UserSchema);

// Bootstrap express
var app = express();

// URLS management

app.get('/', function (req, res) {
    res.send("<a href='/users'>Show Users</a>");
});

app.get('/users', function (req, res) {
    User.find({}, function (err, docs) {
        res.json(docs);
    });
});

app.get('/users/:email', function (req, res) {
    if (req.params.email) {
        User.find({ email: req.params.email }, function (err, docs) {
            res.json(docs);
        });
    }
});

// Start the server
var server = app.listen(3000, function () {

  var host = server.address().address
  var port = server.address().port

  console.log('Example app listening at http://%s:%s', host, port)

});

当我执行sudo node server.js 命令时,我得到以下信息:

 Example app listening at http://0.0.0.0:3000
[Error: failed to connect to [127.0.0.1:27017]]

如您所见,IP 地址不正确,并且 localhost:3000 (127.0.0.1:3000) 也不可用。

有人可以帮助我吗? 谢谢!

【问题讨论】:

  • 尽管提供了代码,但如果构建目标可执行文件不存在,这似乎表明您的 MongoDB 安装不成功。至少它们不在路径中,并且没有证据支持您有一个正在运行的mongod 进程。所以这真的不是一个编程问题,因此不在此处讨论。

标签: linux node.js mongodb


【解决方案1】:

我在 /etc/network/interfaces 中添加了以下几行,之后我的网站就可用了:

auto lo
iface lo inet loopback

【讨论】:

    猜你喜欢
    • 2012-01-09
    • 1970-01-01
    • 1970-01-01
    • 2015-02-05
    • 1970-01-01
    • 2013-04-24
    • 2011-05-12
    • 1970-01-01
    • 2018-07-21
    相关资源
    最近更新 更多