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

ZimaOSでLintuxer Apps Community Storeを安全に利用する

A community maintainer published a ZimaOS/CasaOS app source where every listed app is manually installed and tested before being added.

要点:コミュニティストアはZimaOSを迅速に拡張できるが、すべてのソースをサードパーティ製コードとして扱う

Lintuxer Appsが便利なのは、メンテナーが各リスト項目について、公開前に実際のZimaOSハードウェアへインストールし、ログインまで確認していると述べているためです。これはランダムなComposeファイルをコピーするより強力な品質フィルターですが、それでもコミュニティリポジトリであることに変わりはありません。ソースをインストールすると、そのリポジトリに、サーバー上でボリューム、ポート、環境変数、権限を要求するアプリケーション定義を提示する経路が与えられます。

テスト済みのセルフホスト型アプリを含むLintuxer Appsコミュニティソースを表示したZimaOS App Store
コミュニティストアのスクリーンショットには、CasaDrop、Gitea、Kopia、MediaCMS、Pterodactylなどのテスト済みパッケージがZimaOS内のLintuxer Appsに登録されている様子が表示されています。

コミュニティソースUIからストアを追加する

メンテナーが公開しているソースURLは次のとおりです。

https://chicohaager.github.io/zima-appstore/store.json

App Store → Community Storeを開き、ソースを追加してから更新します。現在のZimaOS Community Store実装では、マニフェストまたはソース定義を読み込み、含まれているアプリを通常のストアUIに表示します。

アプリをインストールする前にリポジトリを確認する

Compose定義、Issueの履歴、更新状況を確認するには、プロジェクトリポジトリが最適です。Lintuxer Appsのソースでは、データやDockerソケットへのアクセスを許可する前に、各パッケージが実際に実行する内容を確認できます。

デフォルト認証情報は初回ログイン時の危険要因

このスレッドには、パスワードを直ちに変更するよう求めるadminなど、一部アプリの仮認証情報が明記されています。LANの外部にサービスを公開する前に変更してください。認証情報が表示されたパッケージ説明は、初期設定には便利ですが、サービスを見つけた人なら誰でも最初に試すべき認証情報を把握できることも意味します。

インストール前にポート、ボリューム、権限を確認する

ホストネットワークモード、特権コンテナ、Dockerソケットのマウント、広範囲な/DATAのマッピング、公開ポートを確認してください。アプリには必要なストレージと機能だけを与えます。これらの定義については、DockerのDocker Composeフィールドが上流のリファレンスです。

Community App Store v2ではメタデータがより厳格

現在のZimaOS開発資料では、v2ソースについて、安定したストアID、アプリID、対応言語のメタデータ、正規化されたx-casaosフィールドが定義されています。つまりメンテナーは、従来のメタデータにいつまでも依存せず、古いソース構成を移行する必要があります。App Storeの移行ガイドで、現在の検証モデルを確認できます。

コミュニティアプリを更新する前にAppDataをバックアップする

コミュニティパッケージによっては、イメージタグ、ボリューム構成、環境変数が変更されることがあります。メジャーアップデートを受け入れる前に、アプリケーションのデータベースと設定を保存してください。ZimaOSバックアップが復旧の基盤になります。

インフラストラクチャに不可欠なアプリはバージョンを固定する

Gitea、Kopia、Pterodactylなど、依存度の高いサービスでは、latestよりも安定版イメージを固定したほうがロールバックしやすくなります。アップグレード前に、上流のリリースノートとストアの差分を確認してください。

Portainerの要件を使えば、作成されたコンテナ構成を別の方法で検証できます。

コミュニティによるテストは上流サポートの代わりにはならない

「ZimaOSでテスト済み」というのは、少なくとも1つの環境で特定のパッケージが起動したことを示すだけであり、すべてのCPUアーキテクチャ、ファイルシステム、ポート競合、将来のイメージで動作することを保証するものではありません。アプリが失敗した場合は、パッケージングの問題と上流アプリケーションのバグを切り分けてください。

コミュニティストアは盲目的に信頼するのではなく、対応範囲を広げるために利用する

最大の価値はスピードです。アプリは標準カタログに掲載される前に、インストール可能になることがあります。その代わり、ソースの確認、更新の管理、セキュリティの一部が利用者の責任になります。ZimaOSアプリの要件を確認して、拡張を計画的に進めてください。

まずは重要度の低いアプリでコミュニティソースを試す

新しいソースからパスワードマネージャー、バックアップエンジン、その他のインフラサービスをインストールする前に、リスクの低いアプリを選び、ソースがイメージの取得、アップグレード、AppData、アンインストールをどのように処理するか確認してください。これにより、重要なデータを危険にさらすことなく、リポジトリのパッケージ品質を判断できます。後で何がインストールされていたか再現できるよう、ソースURLとリポジトリのコミットまたはバージョンを控えておきましょう。

FAQ

ZimaOSのコミュニティストアは公式ですか?

IceWhaleが明示的に公開したものを除き、サードパーティまたはコミュニティのソースです。リポジトリとアプリ定義を確認してください。

Lintuxer Appsを追加するにはどうすればよいですか?

メンテナーのstore.json URLをZimaOS Community Storeから追加し、アプリ一覧を更新します。

テスト済みならアプリは安全ですか?

実機でのテストは有用ですが、権限、ボリューム、ポート、上流イメージも確認してください。

アプリのデフォルトパスワードは変更すべきですか?

はい。初回ログイン直後、かつ外部に公開する前に必ず変更してください。

コミュニティアプリを更新する前に何をバックアップすべきですか?

永続的なAppData、データベース、設定、サービスの復元に必要なシークレットをバックアップしてください。