xandikos
- CalDAV/CardDAVサーバー
- minimalistic!
- ユーザーは一つだけ
- ユーザー認証もなし
- 複雑な設定なし
install
- docker-compose.ymlに書くだけ
- 当たり前だけど,
./xandikos
ディレクトリは1000:1000にとってrwじゃないといけない
... xandikos: restart: always image: ghcr.io/jelmer/xandikos user: "1000:1000" networks: - nginx volumes: - ./xandikos/:/data command: "--route-prefix=/baseurl/to/xandikos/" ...
authentication
- docker-composeにnginxのサービスを作って,reverse proxyする
- 流石に全世界にスケジュールを公開するわけにはいかないので
location /baseurl/to/xandikos/ { proxy_pass http://xandikos:8000; proxy_set_header Host $http_host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_redirect off; proxy_buffering off; auth_basic "login required"; auth_basic_user_file /etc/nginx/htpasswd; }
client setup
- カレンダーのURLは
/baseurl/to/xandikos/user/calendars/calendar
-
- リバースプロキシで設定したBasic認証のユーザー名が
user
でない場合,初期設定の時だけBasic認証を一度無効化しなければならない - 初期設定後に認証を有効化すれば,thunderbirdでの次回情報更新時に,xandikosのユーザー名
user
と別にBasic認証のユーザー名を指定できるダイアログが表示される
- AndroidならDAVx5がgood