コミュニティソリューション

Docker ComposeでCasaOSまたはZimaOSにHomarrをインストールする

A 2023 CasaOS tutorial introduced Homarr through BigBearCasaOS, but current Homarr now has its own maintained Docker Compose deployment model.

結論:2023年のBigBearテンプレートではなく、Homarrの現在のDocker Compose手順を使用する

以前のCasaOS記事は、BigBearCasaOSがワンクリックインストール用にHomarrをパッケージ化していた頃には役立ちました。Homarrは大きく変わっています。現在のセルフホスティングの手順ではComposeを使用し、状態を /appdata、次が必要です SECRET_ENCRYPTION_KEYDockerソケットを任意でマウントして、コンテナ連携を利用できます。

永続的なCompose定義で開始する

services:
  homarr:
    image: ghcr.io/homarr-labs/homarr:latest
    restart: unless-stopped
    ports:
      - "7575:7575"
    volumes:
      - /DATA/AppData/homarr:/appdata
      - /var/run/docker.sock:/var/run/docker.sock
    environment:
      - SECRET_ENCRYPTION_KEY=REPLACE_WITH_64_HEX_CHARS

現在のHomarr DockerインストールではComposeが推奨され、/appdataについて説明されています。

初回起動前に暗号化キーを生成する

openssl rand -hex 32

Homarrはこのシークレットを使用して、機密性の高い連携データを保護します。公開用Composeエクスポートの外部に保管してください。OpenSSLの安全な乱数生成で、このコマンドについて説明しています。

必要な場合にのみDockerソケットをマウントする

Dockerソケットからホストを強力に制御できます。Homarrでリンク、ブックマーク、外部ウィジェットだけが必要な場合は、省略してください。意図的に使用するDocker対応連携に必要な場合のみ追加します。

ZimaOSのデータにはZimaOS OpenAPIを使用する

ストレージやシステムステータスには、ダッシュボードHTMLをスクレイピングするのではなく、公開されているZimaOS OpenAPIを使用してください。ZimaOSアプリの要件では、リソース計画について説明しています。

認証の準備が整うまでHomarrを内部に限定する

ダッシュボードには、内部IP、ポート、インフラの状態が表示されることがあります。認証とHTTPSなしで直接公開しないでください。ZimaOS HTTPSプロキシが公開アクセス層を提供します。

Homarrをコンテナとして更新する

docker compose down
docker compose pull
docker compose up -d

永続化 /appdata コンテナを再作成しても保持されます。だからこそ、古いコンテナを維持するよりボリュームのほうが重要です。

Homarrの設定をコンテナ内だけに保存しない

/appdata がホストの永続ストレージにマッピングされていない場合、コンテナの再作成時に設定が消去される可能性があります。ホスト側の Homarr フォルダーをバックアップしてください。ZimaOS バックアップが復旧レイヤーを提供します。

Homarr は管理者権限の迂回ではなく、入口として使用する

Homarr でリンクや読み取り専用のステータスを一元管理できますが、基盤となる各アプリにはそれぞれ独自の認証があります。ワンクリックアクセス用の公開ウィジェットに管理者認証情報を埋め込まないでください。

すべてを初日に接続せず、段階的にダッシュボードを構築する

まずは ZimaOS、Plex、Home Assistant などのサービスへの単純なリンクから始めてください。ダッシュボード自体が安定してから、連携を一つずつ追加します。これにより、ログインループ、ページの読み込み遅延、権限の問題を引き起こした連携が明確になります。API 連携を20個設定したダッシュボードでは、実際には1つのバックエンドだけがタイムアウトしていても、アプリ全体が壊れているように見えることがあります。

内部ホスト名または安定した LAN IP アドレスを使用する

Homarr の現在のコンテナ手順では、ネットワーク上のクライアントが解決できるホスト名または直接 IP アドレスを推奨しています。リバースプロキシを使用する場合は、公開ホスト名を統一し、WebSocket/API リクエストが同じオリジンを使用するようにしてください。一時的な Docker IP アドレスをハードコードするのは避けてください。コンテナの再作成時に変わる可能性があります。

見た目のレイアウト以外もバックアップする

ダッシュボードには、暗号化された連携認証情報、ユーザーアカウント、アイコン、サービスメタデータが含まれる場合があります。永続化されたディレクトリ全体を保存してください。 /appdata 暗号化キーとともにディレクトリ全体を保存してください。バックアップに依存する前に、使い捨ての Homarr コンテナへの復元をテストしてください。

コンテナの自動更新には注意してください

ダッシュボードは、ホームラボ全体が正常に稼働しているかどうかに最初に気付く場所になることがよくあります。Homarr が自動更新され、別のサービスと同時に問題を起こすと、原因の特定が難しくなります。稼働時間が重要な場合は、動作確認済みのバージョンを固定するか手動で更新し、テスト後に順次新しいバージョンへ移行してください。

アップグレードが成功するたびに、正確な Homarr イメージタグを記録して、簡単にロールバックできるようにしてください。

よくある質問

Homarr に BigBearCasaOS はまだ必要ですか?

いいえ。Homarr は独自の最新の Docker および Compose のインストール手順を公開しています。

SECRET_ENCRYPTION_KEY とは何ですか?

これは、Homarr が機密性の高い連携データを保護するために使用する永続的な秘密情報です。

Docker ソケットは必要ですか?

Docker 対応の連携またはコンテナ制御に限られます。

Homarr で ZimaOS のシステムデータを表示できますか?

ZimaOS OpenAPI を使用したカスタム連携を通じて可能です。

Homarr を安全に更新するにはどうすればよいですか?

/appdata を永続化し、新しいイメージを取得してサービスを再作成し、古いイメージを削除する前にダッシュボードを確認します。