TimeMapperを動かそうと四苦八苦中(動いてません)

Posted by nogajun - 2014/04/09

_

地図上に、その場所で起こった出来事をタイムラインで表示するWebアプリケーションで「TimeMapper」というものがあります。

node.js上で動くので、これをWheezy上で動かそうと、Wheezy Backportsにあるnodejsとnodejs-legacyのパッケージをインストールしてnpmが無いのでインストールスクリプトを使ってインストール。

$ sudo apt-get install -t wheezy-backports nodejs nodejs-legacy
$ curl https://www.npmjs.org/install.sh | sudo sh

その後、githubのTimeMapper Readmeにしたがって設定。

git clone https://github.com/okfn/timemapper
cd timemapper
npm install .
git submodule init && git submodule update
cp settings.json.tmpl settings.json

と、ここまではサクっと終わったけれどnodejsで実行しようとすると、こんなエラーが…。

$ node run.js
path.existsSync is now called `fs.existsSync`.

/home/vagrant/timemapper/node_modules/knox/lib/client.js:197
  if (!options.key) throw new Error('aws "key" required');
                          ^
Error: aws "key" required
    at new Client (/home/vagrant/timemapper/node_modules/knox/lib/client.js:197:27)
    at Function.exports.createClient (/home/vagrant/timemapper/node_modules/knox/lib/client.js:927:10)
    at new S3Backend (/home/vagrant/timemapper/lib/dao.js:134:22)
    at getBackend (/home/vagrant/timemapper/lib/dao.js:213:12)
    at Object.DomainObject.construct (/home/vagrant/timemapper/lib/dao.js:239:20)
    at Object.DomainObject.create (/home/vagrant/timemapper/lib/dao.js:257:24)
    at Object.exports.ensureAnonAccountExists (/home/vagrant/timemapper/lib/logic.js:63:25)
    at Object.<anonymous> (/home/vagrant/timemapper/run.js:10:7)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)

エラーの様子からknoxというライブラリを使ってAmazon S3と同期してるっぽいけど、これを使わずに起動できないものだろうか。 lib/config.jsを見て、settings.jsonに書いてあげるといいかもしれないけれど、空にするというのはなさそうだし、よくわからん。