Quilter - CouchDB/Cloudantを使ったDropboxクローン
Dropboxの手軽なファイル共有の仕組みはとても素晴らしく、一度使うと手放せなくなります。しかし無料版では2GBまでしか使えなかったり、企業によってはセキュリティ上の懸念から利用が禁じられている場合もあるでしょう。 そんな時こそ活かせるのがクローンソフトウェアです。幾つか種類がありますが、今回はNoSQLのCouchDBやCloudantを使ったQuilterを紹介します。
Quilterのインストール
インストールは簡単で、npmコマンドでできます。CouchDBなどは別途インストールが必要です(バイナリまたはHomebrewなど)。
$ npm install -g quilter
Quilterの使い方
インストールが終わったら、ローカルのフォルダを監視対象として設定します。設定ファイルを見る限り複数の設定が作れるようです。
$ quilt sync --local {folder} --remote {url} --watch
folderはローカル、urlはCouchDBのURLを渡します。例えばhttp://127.0.0.1:5984/recipesのようになります。パスも指定する必要があります。
設定が終わるとホームディレクトリに設定ファイルが作られます。jobsサブコマンドで設定が見られます。
$ quilt jobs
[ { command: 'sync',
local: '.',
remote: 'http://127.0.0.1:5984/recipes',
watch: true,
config: '/Users/nakatsugawa/.quilt.json' } ]
syncサブコマンドを使っている場合、指定したディレクトリ以下のファイルを追加、編集すると自動的にデータを同期するようになります。まさにDropboxライクな使い勝手です。後は別なコンピュータ側でpullサブコマンドを使ってデータを引き出せます。
$ quilt pull --local {folder} --remote {url}
pullを行う場合、既にあるフォルダは指定できません。後は相互にsyncしておけば、どちらで更新しても自動反映されるようになります。
Dropboxはインストールがとても簡単で自動で動いてくれる反面、何かで引っかかると動かない理由が分からなくなったりします。Quilterの場合はソースコードが公開されていますのでその原因究明も楽なのではないでしょうか。 Quilterはnode/JavaScript製のソフトウェア(ソースコードは公開されていますがライセンスは明記されていません)です。 garbados/quilter