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. 02在 Render 上运行自管数据库
  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 等数据库原生备份方式,并测试其恢复流程。使用当前支持的传输方式(例如通过 SSH 使用 SCP 或 Magic-Wormhole)将备份文件移出服务。恢复快照会替换整个磁盘,并永久丢弃所选快照之后所做的更改。

参考文档

文档内容
references/persistent-disks.md当前磁盘限制、配置、容量、快照、恢复和传输

相关技能

  • render-web-services — 部署生命周期、健康检查(磁盘会禁用零停机部署)
  • render-private-services — 带磁盘的内部服务(Elasticsearch、MySQL)
  • render-blueprints — render.yaml 中的 disk 字段参考
  • render-postgres — 托管数据库替代方案(无需管理磁盘)

获取当前文档

每当此技能指示你查阅 Render 当前文档时:

  1. 使用可用的 URL 获取工具或 HTTP 客户端(例如 curl)直接获取链接的 Markdown 文档。不要用网页搜索摘要代替该文档。
  2. 确认获取成功且返回了预期文档,然后阅读其内容。仅保存文件或打印文件路径并不足够。
  3. 如果请求失败,或工具无法读取 Markdown 响应,请打开并阅读链接的 HTML 版本。
  4. 如果两个版本都无法获取,请说明当前参考文档不可用,并遵循技能中针对该主题的备用方案。仅将随附指南用于稳定不变的限制,不要猜测可能变化的平台细节。

如果任务需要多个参考文档,请对每份文档分别执行此流程,并区分已验证和仍不可用的文档。

评论

支持 Markdown