Dashboard が開かない、9090 に接続できない、unauthorized と表示される場合は?

Dashboard は external-controller API へ接続する必要があります。開けない場合は、待ち受けアドレス、ポート、secret、クロスオリジン、リバースプロキシ、ファイアウォールを確認してください。

  • セキュリティ、プライバシー、権限
  • トラブルシューティング
要点

Dashboard は external-controller API へ接続する必要があります。開けない場合は通常、リッスンアドレス、ポート、secret、クロスオリジン、リバースプロキシ、ファイアウォールのいずれかに問題があります。まず端末内で制御アドレスとポートを検証し、Dashboard に同じ secret を設定します。リモートアクセスを有効にするのは最後にし、HTTPS とアクセス制御を追加してください。

connection refused、unauthorized、CORS を見分ける方法

connection refused はインターフェースへ到達できていない状態、unauthorized は応答があっても認証に失敗している状態、CORS はブラウザのクロスオリジン制限を示します。

  • external-controller が有効で、正しいアドレスをリッスンしているか
  • ポートが 9090、またはクライアントで実際に設定したポートになっているか
  • Dashboard に入力した secret が設定と一致しているか
  • ブラウザのコンソールまたはログに unauthorized、connection refused、CORS のいずれかが表示されているか

制御アドレス、ポート、secret を一致させる

  1. まずクライアントまたはカーネルが動作していることを確認します
  2. 端末内から 127.0.0.1 と制御ポートへアクセスし、API が応答することを確認します
  3. Dashboard の API アドレスと secret を現在の設定値へ変更します
  4. ポートが使用中の場合は external-controller のポートを変更し、Dashboard 側も合わせて更新します(参照: 外部コントローラーポート競合の FAQ
  5. リモートアクセスでは、先にアクセス制御と HTTPS を追加してから、信頼できるネットワークへ公開します

9090 は一般的な例として使われるポートにすぎず、実際のポートは設定に従います

secret が空だと、制御インターフェースのリスクが高まります

external-controller をインターネットへ直接公開しないでください

Dashboard が復旧したことを確認する方法

インターフェースへ到達でき、認証が有効である
制御アドレスへアクセスするとバージョン情報が返り、Dashboard に同じ secret を設定するとノードと接続を読み取れます。
引き続き接続拒否または未認証と表示される
connection refused と unauthorized を区別し、リッスンアドレス、ポート、secret、リクエストヘッダーをそれぞれ確認します。