SynologyやQNAPを使う理由の一つとして、Dockerが動くことだと思う。今更、aptやyumでインストールしたり、Systemdのスクリプトを書いて、自動起動するというのはちょっとめんどくさい。Dockerなら環境に依存しないでどこでも立ち上げることができる。そういうインストールと設定のポータボリティがある。ワークロードだけではなく、設定とその保守を含めたポータビリティと言える。
で、NASで使う場合、IAアーキテクチャーでメモリが(公式あるいは非公式)でメモリの増設が可能なものをお勧めする。いい気になって使っているとメモリを結構食うので。
閑話休題
MacやiOSからHomekitを使いたいので、SynologyのNASにHomebridgeを入れた。その際、ハマったのでメモ。
HomebridgeのフォルダーをDockerフォルダーの中に作っておく。
Homebridgeのイメージをダウンロード。ozmu/homebridgeを利用した。
ネットワークの設定
Use the same network as Docker Hostを選択
Dockerの起動設定
Execute container using high privilegeとEnable auto-restartを選択して、Advanced Settingをクリック
環境変数を2つ追加
- DSM_HOSTNAME
- TZ
DSM_HOSTNAMEは、NASに登録されているNASのホスト名を入力。
TZはタイムゾーンを指定。
Saveして、Nextをクリック。
DSM_HOSTNAMEを指定しないとhostname conflictが大量発生する。回避方法が議論されていたのがこれ。
https://github.com/oznu/docker-homebridge/issues/35
マウントするボリュームを指定
これで起動。
ブラウザで http://NAS_IPアドレス:8581 を開く
GET STARTEDをクリックして管理者ユーザ名とパスワードを設定(前のバージョンだと確かAdminで固定されていたような気がするが。)
これで使えるようになった。