Chandler Server 導入2008年08月17日 23時30分00秒

カレンダー共有サーバを探す

カレンダーの同期/共有をするためにいろいろとオープンソースを探しましたが、多くの場合(Google/Yahooとか)「うちのWebサービスでやってます」といったものしか見つかりませんでした。

この手のサービスは利用者は多いし大手なので問題はないでしょうが、無料で利用しやすい反面、なんとなく個人のスケジュールを公開している感じが精神的に抵抗があります。(まだまだ時代に乗り切れていない・・)

そんな中、Chandler Project というのを発見。赤い犬がトレードマークのようです。^^;

いろいろなサイトで紹介されてましたが情報は古い。と思ってたところ、改めてリンク先を収集してみると最近バージョンがあがったらしく新しめの情報もありました!
GTD を意識したカレンダー・タスク管理アプリ:Chandler
CalDAVもサポートするカレンダーサーバ「Chandler Server」
オープンソースのPIMソフト「Chandler 1.0」リリース


Chandler Project とは

最初は Chandler Project のWebサイトを見ても何をするためには何をダウンロードすればいいのかよくわかりませんでした。。。;-) やっぱり英語もちゃんと読まないといけません。。。
さて私の理解した感じをまとめておきます。
  1. Desktop (Chandler Desktop)
  2. クライアントアプリケーションです。
    対応OSは、Windows/Linux/MacOSX(PPC/Intel)となってます。後述しますが、ここで公開されているクライアントアプリケーションを使用しなくても、Apple iCal や Mozilla Sunbird などでカレンダー共有ができます。
  3. Server (Chandler Server (Cosmo))
  4. サーバーアプリケーションです。
    役割は2つあります。
    ・Webサービス。Webブラウザでカレンダー操作可能。
    ・カレンダーデータ共有。クライアントと通信可能。
    Javaで開発されており、Tomcatで動作するようになっています。(Tomcatも同梱されてます:後述)Tomcat の動作する環境ならOKだと思いますが、Linux/MacOSX/Windows (native and Cygwin)でテストしたようなことが書かれています。
  5. Hub Service
  6. はじめはServerとHub Serviceの意味がわかりませんでしたが^^;、自分のサーバーマシン上で単独動作させるならServerをダウンロード&インストールして自分でサーバーを立てる。そういう環境はないけどインターネット環境はあるぞ、という場合はChandler Projectの運営しているWebサイトであるChandler Hub(Hub Service)を利用していいですよ。という位置づけであると理解しました。


お試し環境(インストール環境)

インストールした環境は次の通り。
  • サーバー:CentOS5.2
  • CentOS5.2をインストール後、Updateを行った状態。
  • クライアント:MacBookPro (MacOSX 10.5.4)
  • Chandler Desktop と iCal と Sunbird を試します。


Chandler Server (Cosmo) 導入


事前準備:

データベース:
Chandler Server (Cosmo) は、MySQL5を使用することもできそうですが、Derby を使った方法が簡単そうなのでとりあえず Derby を使った方法で動作確認まで行ってみることにします。
→データベースについての作業なし。

Java (for Tomcat5.5) :
同梱されているTomcatは5.5なので、JDK1.5(5.0)以降が必要になります。しかしながら、CentOS5.2にインストールされているのは1.4です。
今回はJDKではなくJREで十分のため既にインストールされていた/usr/lib/jvm/にjre-1.4.2 を尊重して(?)、/usr/lib/jvm/jre-1.5 を JAVA_HOME にできるようにインストールしました。※インストールといってもダウンロード&展開するだけですが。。。

インストール:

まずは動作確認が目的のため、一般ユーザのホームディレクトリで作業してみます。作業内容は以下の通り。
同梱されていたREADME.txtにある通り ここ を参考にしました。

ダウンロード:

[makai@localhost ~]$ mkdir Chandler
[makai@localhost ~]$ cd Chandler/
[makai@localhost Chandler]$ ls
[makai@localhost Chandler]$ wget http://downloads.osafoundation.org/cosmo/releases/1.0.0/osaf-server-bundle-1.0.0.tar.gz
--14:13:38--  http://downloads.osafoundation.org/cosmo/releases/1.0.0/osaf-server-bundle-1.0.0.tar.gz
downloads.osafoundation.org をDNSに問いあわせています... 64.127.108.189
downloads.osafoundation.org|64.127.108.189|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 47585988 (45M) [application/x-gzip]
Saving to: `osaf-server-bundle-1.0.0.tar.gz'

100%[===============================================================================>] 47,585,988   418K/s   in 1m 46s 

14:15:25 (438 KB/s) - `osaf-server-bundle-1.0.0.tar.gz' を保存しました [47585988/47585988]

[makai@localhost Chandler]$ 
[makai@localhost Chandler]$ ls
osaf-server-bundle-1.0.0.tar.gz

ファイルの展開(解凍):

[makai@localhost Chandler]$ tar xvfz osaf-server-bundle-1.0.0.tar.gz 
osaf-server-bundle-1.0.0/tomcat/
osaf-server-bundle-1.0.0/tomcat/logs/
osaf-server-bundle-1.0.0/tomcat/shared/
osaf-server-bundle-1.0.0/tomcat/shared/classes/
 : : :
osaf-server-bundle-1.0.0/tomcat/conf/server.xml
osaf-server-bundle-1.0.0/tomcat/webapps/chandler.war
osaf-server-bundle-1.0.0/tomcat/conf/Catalina/localhost/chandler.xml
[makai@localhost Chandler]$
[makai@localhost Chandler]$ ls 
osaf-server-bundle-1.0.0  osaf-server-bundle-1.0.0.tar.gz
[makai@localhost Chandler]$ ls osaf-server-bundle-1.0.0/
LICENSE.txt  NOTICE.txt  README.txt  RELEASE_NOTES.txt  bin  db  etc  license  logs  migration  tomcat
[makai@localhost Chandler]$

サーバ開始(起動):

[makai@localhost osaf-server-bundle-1.0.0]$ export JAVA_HOME=/usr/lib/jvm/jre-1.5
[makai@localhost osaf-server-bundle-1.0.0]$ ls
LICENSE.txt  NOTICE.txt  README.txt  RELEASE_NOTES.txt  bin  db  etc  license  logs  migration  tomcat
[makai@localhost osaf-server-bundle-1.0.0]$ bin/osafsrvctl start
Using OSAFSRV_HOME:    /home/makai/Chandler/osaf-server-bundle-1.0.0
Using CATALINA_BASE:   /home/makai/Chandler/osaf-server-bundle-1.0.0/tomcat
Using CATALINA_HOME:   /home/makai/Chandler/osaf-server-bundle-1.0.0/tomcat
Using CATALINA_TMPDIR: /home/makai/Chandler/osaf-server-bundle-1.0.0/tomcat/temp
Using JRE_HOME:       /usr/lib/jvm/jre-1.5
[makai@localhost osaf-server-bundle-1.0.0]$

サーバ停止(終了):

[makai@localhost osaf-server-bundle-1.0.0]$ export JAVA_HOME=/usr/lib/jvm/jre-1.5
[makai@localhost osaf-server-bundle-1.0.0]$ ls
LICENSE.txt  NOTICE.txt  README.txt  RELEASE_NOTES.txt  bin  db  etc  license  logs  migration  tomcat
[makai@localhost osaf-server-bundle-1.0.0]$ bin/osafsrvctl stop
Using OSAFSRV_HOME:    /home/makai/Chandler/osaf-server-bundle-1.0.0
Using CATALINA_BASE:   /home/makai/Chandler/osaf-server-bundle-1.0.0/tomcat
Using CATALINA_HOME:   /home/makai/Chandler/osaf-server-bundle-1.0.0/tomcat
Using CATALINA_TMPDIR: /home/makai/Chandler/osaf-server-bundle-1.0.0/tomcat/temp
Using JRE_HOME:       /usr/lib/jvm/jre-1.5
[makai@localhost osaf-server-bundle-1.0.0]$

次のURL http://localhost:8080/ にアクセスして下図のようなページが表示されればOKです。
Chandler Server のトップページ
え?これだけ?って感じですね。さすが Tomcat!?(Java!!)、Chandler !!

とりあえずアカウント作成:
画面右側にある「Create a new account」をクリックします。
Create a new account

必要な情報をいろいろと入力。

まだカレンダーが作成されていないのでグレーな表示。
カレンダーが作成されていない状態

左上の赤い犬の下辺りにある [+] をクリックしてカレンダー名を入力。
新規カレンダー名の入力

カレンダーが作成されました!
カレンダーが作成されました

とりあえずメモを作成してみたところ(タイトル:最初のメモ)
メモを登録したところ

Chandler Desktop 導入

ここからOSに合わせてダウンロードします。
Chandler Project - Welcome
Chandler Desktop


つづく。。。

Chandler Server 導入
CalDAV カレンダー同期確認(Chandler Desktop 編)
CalDAV カレンダー同期確認(Apple iCal 編)
CalDAV カレンダー同期確認(Mozilla Sunbird 編)