render-disks について
render-disksは、Renderの永続ディスクの計画、設定、トラブルシューティングを支援するスキルです。マウントパス、容量、スナップショット、データ復旧に加え、ディスク利用時のサービス制約も扱います。
主な機能
- 01永続ディスクの設定ガイダンス
- 02マウントパスと容量の計画
- 03スナップショットと復元の案内
- 04データ転送と復旧の助言
- 05ディスク利用時のスケーリング制約
活用シーン
- 01アップロードやCMSメディアの永続化
- 02RenderでのセルフマネージドDB運用
- 03スケーリングやデプロイの制限の調査
- 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 ドキュメントを参照するよう指示された場合は、必ず次の手順に従ってください。
curlなどの利用可能な URL 取得ツールまたは HTTP クライアントを使って、リンク先の Markdown ドキュメントを直接取得してください。ウェブ検索の要約をドキュメントの代わりに使用しないでください。- 取得が成功し、想定したドキュメントが返されたことを確認してから、その内容を読んでください。ファイルを保存したり、そのパスを表示したりするだけでは不十分です。
- 取得に失敗した場合、または使用するツールで Markdown の応答を読み取れない場合は、リンク先の HTML 版を開いて読んでください。
- どちらの形式も取得できない場合は、最新の参照資料を利用できないことを明示し、そのスキルにあるトピック固有の代替手順に従ってください。バンドルされたガイダンスは、変わりにくい制約にのみ使用し、変更される可能性のあるプラットフォームの詳細を推測しないでください。
複数の参照資料が必要な場合は、それぞれにこの手順を適用し、確認できたドキュメントと利用できなかったドキュメントを区別してください。