mcpField
R
render-disks

render-disks

github.com/render-ossクラウド・DevOps90339 回インストール今日更新
リポジトリ

render-disks について

render-disksは、Renderの永続ディスクの計画、設定、トラブルシューティングを支援するスキルです。マウントパス、容量、スナップショット、データ復旧に加え、ディスク利用時のサービス制約も扱います。

主な機能

  1. 01永続ディスクの設定ガイダンス
  2. 02マウントパスと容量の計画
  3. 03スナップショットと復元の案内
  4. 04データ転送と復旧の助言
  5. 05ディスク利用時のスケーリング制約

活用シーン

  1. 01アップロードやCMSメディアの永続化
  2. 02RenderでのセルフマネージドDB運用
  3. 03スケーリングやデプロイの制限の調査
  4. 04ディスクスナップショットからのデータ復旧

インストール

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

$npx skills add https://github.com/render-oss/skills --skill render-disks

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

同梱ファイルreferences/persistent-disks.md

詳細

Render 永続ディスク

永続ディスクは、サービスに設定されたマウントパス配下に書き込まれたファイルを、デプロイや再起動後も保持します。

ディスクの設計、設定、サイズ変更、データ転送、スナップショットの作成、復元、トラブルシューティングを行う前に、references/persistent-disks.md をお読みください。

使用する場面

  • ファイルアップロード、CMS メディア、ユーザー生成コンテンツの保存
  • Render 上でのセルフマネージドデータベース(MySQL、MongoDB、ClickHouse)の実行
  • ステートフルなインフラストラクチャ(Elasticsearch、Kafka、RabbitMQ、Mattermost)のデプロイ
  • スケーリングがブロックされる理由やダウンタイムなしのデプロイが無効になる理由の把握
  • ディスクスナップショットからのデータ復元

マネージドデータベースには、ディスク上のセルフマネージドの代替手段よりも、Render Postgres(render-postgres)または Key Value(render-keyvalue)を優先してください。

主な判断事項

  • Render のデフォルトのファイルシステムはエフェメラルです。デプロイや再起動後も保持されるのは、ディスクのマウントパス配下に書き込まれたファイルのみです。
  • ディスクを使用するサービスは単一インスタンスです。水平スケーリングやダウンタイムなしのデプロイは利用できません。
  • スケーリングされたインスタンス間でファイルストレージを共有する必要がある場合は、S3 や R2 などの外部オブジェクトストレージを使用してください。リレーショナルデータには Render Postgres を、マネージドキャッシュやキューの状態には Render Key Value を使用してください。
  • 容量は増やせますが減らせないため、現在の使用量を踏まえ、対応している現行の上限内で最小のディスクサイズを選択してください。小規模なアップロードサービスでは、現行の上限が許す場合、1~5 GB が妥当な開始範囲です。

Blueprint の設定

ネイティブ Node.js のアップロードサービスでは、ソースルート自体ではなく /opt/render/project/src/uploads などのサブディレクトリをマウントし、アプリケーションがそこにアップロードを書き込むように設定してください。

services:
  - type: web
    name: uploads
    runtime: node
    buildCommand: npm ci
    startCommand: npm start
    disk:
      name: uploads-data
      mountPath: /opt/render/project/src/uploads
      sizeGB: 5

マウントパスやサイズを確定する前に、references/persistent-disks.md を参照して、最新のディスクドキュメントと Blueprint 仕様を取得してください。

データベースのバックアップとファイルの復旧

MySQL などのセルフマネージドデータベースの復旧に、ディスクスナップショットを使用しないでください。ファイルシステムのスナップショットを復元すると、データベースの状態に不整合が生じたり、破損したりするおそれがあります。mysqldump などのデータベース固有のバックアップを使用し、復元手順をテストしてください。SCP over SSH や Magic-Wormhole など、現在サポートされている転送方法を使って、バックアップファイルをサービスの外部に移動してください。スナップショットを復元するとディスク全体が置き換えられ、選択したスナップショット以降の変更は永久に破棄されます。

参考資料

ドキュメント内容
references/persistent-disks.md現在のディスクの制約、設定、サイズ、スナップショット、復元、転送

関連スキル

  • render-web-services — デプロイのライフサイクル、ヘルスチェック(ディスクによりダウンタイムなしのデプロイが無効になります)
  • render-private-services — ディスクを使用する内部サービス(Elasticsearch、MySQL)
  • render-blueprints — render.yaml の disk フィールドのリファレンス
  • render-postgres — マネージドデータベースの代替手段(ディスク管理は不要)

最新ドキュメントの取得

このスキルで最新の Render ドキュメントを参照するよう指示された場合は、必ず次の手順に従ってください。

  1. curl などの利用可能な URL 取得ツールまたは HTTP クライアントを使って、リンク先の Markdown ドキュメントを直接取得してください。ウェブ検索の要約をドキュメントの代わりに使用しないでください。
  2. 取得が成功し、想定したドキュメントが返されたことを確認してから、その内容を読んでください。ファイルを保存したり、そのパスを表示したりするだけでは不十分です。
  3. 取得に失敗した場合、または使用するツールで Markdown の応答を読み取れない場合は、リンク先の HTML 版を開いて読んでください。
  4. どちらの形式も取得できない場合は、最新の参照資料を利用できないことを明示し、そのスキルにあるトピック固有の代替手順に従ってください。バンドルされたガイダンスは、変わりにくい制約にのみ使用し、変更される可能性のあるプラットフォームの詳細を推測しないでください。

複数の参照資料が必要な場合は、それぞれにこの手順を適用し、確認できたドキュメントと利用できなかったドキュメントを区別してください。

コメント