はてなブックマークやDelicious、Pinboardなど、オンラインブックマークサービスは地味ながら根強い人気を誇っています。
本日紹介する「Bookmarks」はそのようなブックマークサービスを、独自サーバーで運用することができるセルフホスト型のオープンソースブックマーク管理ソフトです。
自前でサーバーを用意する必要がありますが、既存サービスのようにサービス提供側がいつサービスを止めるのか?といった余計なことを気にせず使い続けることが可能となっています。
以下使用法をご紹介。
Bookmarksの使用方法(デモ)
手始めにオンラインデモで使い勝手を試すことができます。
デモサイトにアクセスし、ユーザー名:admin、パスワード:nimdaでログインしましょう。
デモサイトではWeb画面からブックマーク追加したり、編集したりすることが可能です。
またはChromeプラグインをインストールし、オプションでURLを「http://bookmarkdemo.miceli.click/」に変更して利用することもできます。
Bookmarksの使用方法(インストール)
Bookmarksをローカル環境で動かすには、Webサーバー(apache2 or nginx)、php 5.3以降、Laravel 5.2、mysqlなどが必要です。もちろんこれらのソフトウェアを個別に設定して動かすこともできますが、今回はDockerを利用して動かす方法を試してみます。なおDockerの利用法は別記事で説明していますのでそちらを参照してください。
Dockerを利用する場合以下の手順で実行します。
git clone git@github.com/devimust/easy-bookmark-manager.git cd easy-bookmark-manager ./docker/prep-dev.sh
なおpre-dev.shは、単なるシェルスクリプトで、内部では以下のようなDockerコマンドを実行しています(こちらは実行する必要ありません)。
docker-compose build docker-compose up docker-compose run --rm composer install docker-compose run --rm npm install docker-compose run --rm gulp --production docker-compose run --rm artisan key:generate docker-compose run --rm phpunit docker-compose run --rm artisan migrate:refresh --seed docker-compose run --rm artisan db:seed --class=DummyBookmarksSeeder
pre-dev.shの実行にはかなり時間がかかります(Mac mini 2012では30分弱時間が必要でした)。時間に余裕があるときに実行することをお勧めします。
完了後「http://localhost:8000」にアクセスします。デモサイト同様にユーザー名:admin、パスワード:nimdaでログインし、同じような画面が表示できれば成功です。
Chromeプラグインを利用する場合、URLを「http://localhost:8000」に変更します。
まとめ
Bookmarksを利用すれば独自のオンラインブックマークサービスを構築することができます。ユーザー管理機能も実装されていますので、個人で利用する以外に仲間内でURLを共有するサービスとしても便利かもしれません。