長いZimaOSサポートの議論の4ページ目では、最初のリモートアクセス設定に成功した後も、1人のユーザーがJellyfinとNginx Proxy Managerで繰り返し遭遇した障害を追っています。重要なのは、単一の魔法のポートではありません。リバースプロキシの転送先、Jellyfinのポートマッピング、Dockerネットワーク、またはアプリケーションの状態が変わるたびに、502エラーは再発する可能性があります。
このページでは61~80件目の投稿だけを扱います。同じスレッド内の別の箇所で説明されている、以前のDuckDNSと証明書の設定は繰り返しません。
NPMのAPIメッセージとJellyfinの502エラーを分けて考える
ユーザーが最初に見たのは「APIとの通信に失敗しました。NPMは正しく実行されていますか?」というメッセージでした。コミュニティによるログの確認では、Nginx Proxy Manager自体は稼働しており、Let's Encryptの更新も成功していることが分かりました。そのため、一時的なAPIメッセージは、古いブラウザーセッション、またはUIとバックエンド間の一時的な通信中断である可能性があり、パブリック側の502エラーは別個のプロキシからJellyfinへの接続問題として残りました。
3種類のアドレスを区別する
| アドレスの種類 | 例としての役割 | NPMはこれに転送すべきか? |
|---|---|---|
| パブリックWANアドレス | DuckDNSによって更新されるISP側のアドレス | いいえ |
| ZimaOSのLANアドレス | 次のような安定したホームネットワークアドレス 192.168.1.50
|
Jellyfinがホストポートを公開している場合 |
| Dockerコンテナのアドレスまたは名前 | 次のような内部エンドポイント jellyfin:8096
|
NPMが同じDockerネットワークに到達できる場合のみ |
このスレッドでは、コンテナ名、ホストのLANアドレス、内部Dockerアドレスが何度も切り替わっていました。これらは互換的に使えるものではありません。TLSやDNSを変更する前に、サポートされているルートを1つ選び、NPMコンテナからテストしてください。
ポートマッピングを正しい方向で読む
Jellyfinの設定にはホストポートが表示されていました 8097 コンテナポートにマッピング 8096。NPMがZimaOSのLANアドレス経由で接続する場合は、公開されたホストポートを使用する必要があります。NPMが共有Dockerネットワーク上でコンテナ名を使って直接接続する場合は、通常、Jellyfinの内部ポートを使用します。
NPM内部からの接続リセットは、選択したルートでは有効なJellyfinの応答がまだ得られていないことを示していました。これは、単に両方のコンテナを再起動するよりも有用な証拠です。
段階的な診断順序を使用する
- プロキシに触れる前に、Jellyfinをローカルで開いて再生を確認する
- Jellyfinコンテナが稼働していることを確認し、保存されているホストポートとコンテナポートのマッピングを確認してください。
- 安定したZimaOSのLANアドレスと公開ホストポートの組み合わせ、または共有ネットワーク上のコンテナ名と内部ポートの組み合わせのいずれかを選択してください。
- NPM環境から、その正確なエンドポイントをテストしてください。
- HTTPルーティングが機能することを確認してからTLSを再び有効にし、公開ドメインをテストしてください。
- アプリを編集または再起動した後は、DNSを変更する前にローカルテストとプロキシテストを再度実行してください。
メディアパスの編集で別の障害が発生することがあります
その後、リモートユーザーはJellyfinを閲覧できましたが、メディアを再生できませんでした。所有者がJellyfinのコンテナ設定を変更すると、公開サイトが応答しなくなりました。その後、コミュニティによるログの確認で、Jellyfinは稼働しており、次の場所をスキャンしていることが分かりました。 /Media/Moviesに言及しており、プロキシの転送先に再び注意を向けることになりました。これは、変更を一つずつ記録し、個別にテストすべき理由を示しています。
バックアップ時のLinuxパスでは大文字と小文字が区別されます
設定のバックアップに失敗したのは、コマンドが /DATA/AppData/duckdns一方、実際のディレクトリは /DATA/AppData/DuckDNS。Linuxでは、これらは異なるパスとして扱われます。元のスレッドではコミュニティ作成のアーカイブコマンドが提案されていましたが、IceWhaleが提供したものではないため、ここでは公式バックアップ手順として再掲していません。
AppDataをアーカイブする前に、ディレクトリ名を正確に一覧表示し、データベースで一貫性のあるスナップショットが必要なアプリケーションを停止してから、アーカイブのコピーを一時的な場所に復元して検証してください。
現在サポートされているリモートアクセス
管理とファイルアクセスについては、現在のZimaOSドキュメントで、ZimaClientのリモートアクセスによる暗号化されたピアツーピアアクセスが案内されています。公開Jellyfinリバースプロキシは、依然として高度なサードパーティ製ワークフローであり、公開するのはメディアサービスだけにして、ZimaOSダッシュボードは公開しないでください。
Jellyfin 502 FAQ
「NPM API failed」と表示されたことは、NPMが停止している証拠ですか?
いいえ。スレッドではNPMのログと証明書の更新は正常でしたが、ブラウザーにはそのメッセージが表示されていました。
NPMではポート8096と8097のどちらを使うべきですか?
コンテナ間の直接ネットワーク接続では内部ポートを使用し、ZimaOSのLANアドレスに転送する場合は公開ホストポートを使用します。
バックアップでは、なぜDuckDNSが存在しないと表示されたのですか?
実際のAppDataフォルダーではDとDNSが大文字でした。Linuxのパスでは大文字と小文字が区別されます。
