mcpField
Z
zeabur-server-list

zeabur-server-list

github.com/zeaburクラウド・DevOps39176 回インストール7 週間前に更新
リポジトリ

zeabur-server-list について

zeabur-server-listは、Zeabur CLIでサーバーを確認・操作するスキルです。ZeaburOS搭載機とUbuntu VPSを見分け、詳細表示、再起動、SSH接続のコマンドを案内します。

主な機能

  1. 01サーバー一覧とOSの確認
  2. 02リソースとプロバイダーの詳細表示
  3. 03サーバーの再起動
  4. 04SSH接続
  5. 05非対話でのリモートコマンド実行

活用シーン

  1. 01Zeaburプロジェクトをホストできるマシンの確認
  2. 02サーバー使用量と所在地の確認
  3. 03SSHによるリモート診断

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/zeabur/agent-skills --skill zeabur-server-list

インストール後、Claude Code で/zeabur-server-listを入力して読み込まれたか確認します。

詳細

Zeabur サーバーの一覧表示と詳細取得

Zeabur CLI の実行には、必ず npx zeabur@latest を使用してください。 zeabur を直接実行したり、ほかのインストール方法を使用したりしないでください。npx が利用できない場合は、まず Node.js をインストールしてください。

すべてのサーバーを一覧表示する

npx zeabur@latest server list -i=false

出力例

     ID              NAME        IP              PROVIDER   LOCATION         STATUS   VM STATUS   OS
-----------------+-------------+---------------+----------+----------------+--------+-----------+----------
 6989b00fd42b...   my-server    103.45.67.89    Hetzner    Singapore, SG    Online   RUNNING     ZeaburOS
 6989b00fd42b...   dev-box      45.67.89.12     Vultr      Tokyo, JP        Online   RUNNING     Ubuntu

Zeabur プロジェクトをホストできるサーバー:OS 列を確認してください

ZeaburOS はそのマシンが Zeabur プロジェクトをホストできることを意味し、Ubuntu はホストできないことを意味します(ZeaburOS がインストールされるまではホストできません)。これが確実な判断方法です。どちらの種類かを確認するために、マシンへ SSH 接続しないでください。

機械可読な出力を得るには、--json の各サーバーに os として同じ値が含まれます。

npx zeabur@latest server list -i=false --json | jq -r '.[] | "\(.Name)\t\(.os)"'

CLI 0.21.0 以降が必要です。OS 列と os フィールドがどちらもない場合は、CLI が古いバージョンです。npx zeabur@latest で最新バージョンを取得するか、API 経由で hasK3s を照会してください(このフィールドにある3つの状態の落とし穴については、zeabur-server-ssh スキルを参照してください)。

サーバーの詳細を取得する

# By server ID
npx zeabur@latest server get <server-id> -i=false

OS、CPU/メモリ/ディスク使用量、プロバイダー、ロケーション、管理対象かどうか、作成日時などの詳細情報を表示します。

リソース列は 使用量/合計 の形式です。CPU はミリコア単位です(148/4000 m は4コアのうち0.15コアを意味します)。メモリとディスクは MB 単位です。列に — と表示されている場合、その値が計測されていないことを意味し、マシンにリソースがないという意味ではありません。

サーバーを再起動する

npx zeabur@latest server reboot <server-id> -y

-y は確認プロンプトを省略します。非対話型の使用では必須です。

サーバーとプロジェクト

サーバーが Zeabur プロジェクトをホストできるのは、ZeaburOS が稼働している場合のみです。そのようなサーバーにデプロイされているプロジェクトでは、Region.ID が server-<server-id> になります。

レンタル時に用意されるのは Ubuntu です。基本 OS と SSH のみで、Zeabur サービスは含まれません。そのため、新しくレンタルしたサーバーは ZeaburOS がインストールされるまでプロジェクトをホストできません。この手順については zeabur-server-rent スキルを参照してください。サーバーの種類は、上記の OS 列で確認できます。

直接インストールするのは、まだ何も設定されていないマシンに限ります。ユーザーがすでに設定したマシンを変換するには、ダッシュボードで再インストールする必要があり、ディスクは消去されます。提案する前に、zeabur-server-rent スキルを参照してください。

ZeaburOS サーバーの場合:

  • サービスをデプロイするには、そのサーバーに紐付けられたプロジェクトで zeabur-deploy スキルを使用してください。SSH 接続して、Web サーバーを手動でセットアップしたり、ファイルをコピーしたりしないでください。
  • SSH は低レベルのデバッグ専用です(例:kubectl の確認、ディスクの調査、ネットワーク診断)。サービスのデプロイや管理に SSH は必要ありません。

通常の Ubuntu VPS の場合: SSH はデバッグ用の裏口ではなく、まさにそのためのものです。マシンはユーザーが自由に設定できます(docker compose、1Panel、寶塔など)。管理する Zeabur サービスはなく、kubectl もありません。

サーバーに SSH 接続する

npx zeabur@latest server ssh <server-id>

以下の kubectl の例は ZeaburOS サーバーを前提としています。通常の Ubuntu VPS では command not found エラーになります。2種類の見分け方については、zeabur-server-ssh スキルを参照してください。

管理対象サーバーでは、パスワードは自動的に取得されます。sshpass がインストールされていればログインもすべて自動で行われます。インストールされていない場合は、手動入力用にパスワードが表示されます。

非対話型 SSH(リモートコマンドの実行)

非対話型環境(例:Claude Code、CI/CD)では、対話型の SSH セッションを使用できません。代わりに、-i=false を指定して コマンドを標準入力経由でパイプしてください。

echo 'kubectl get pods -A' | npx zeabur@latest server ssh <server-id> -i=false

複数のコマンドを実行する場合は、; または && で区切ります。

echo 'kubectl get pods -A; kubectl get svc -A' | npx zeabur@latest server ssh <server-id> -i=false

重要な注意事項:

  • 出力にはサーバーの MOTD(Message of the Day)バナーが含まれます。結果を解析する際は除外してください。
    echo 'kubectl get pods -A' | npx zeabur@latest server ssh <server-id> -i=false 2>&1 \
      | grep -v "Welcome\|Documentation\|Management\|Support\|System load\|Usage of /\|Memory usage\|Swap usage\|Strictly\|just raised\|https://ubuntu\|Expanded\|updates can\|To see these\|Enable ESM\|See https://ubuntu\|New release\|Run 'do-release\|restart required\|INFO.*Connecting\|Pseudo-terminal\|^ \*"
    
  • リモートコマンドの終了コードが0以外の場合(例:grep で一致するものがない場合)、CLI は ERROR exit status 1 を出力します。これは必ずしも SSH 接続の失敗を意味しません。
  • このコマンドでは、ヒアドキュメント構文(<<'EOF')は確実に動作しません。必ず echo '...' | を使用してください。

コメント