跳转至

Render PaaS 云部署平台

一句话概述:Render 是 Heroku 的现代替代品,支持 Web 服务、静态站点、后台任务、Cron 定时任务、PostgreSQL 数据库和 Redis,GitHub 推送自动部署,免费套餐够个人项目用。

核心知识点

概念白话解释
Web Service持续运行的 Web 应用(API 服务器、Web 应用)
Static Site静态网站托管(React/Vue 构建产物)
Background Worker后台任务处理(队列消费者)
Cron Job定时任务
Blueprint基础设施即代码,用 YAML 定义所有服务

安装配置

# Render 主要通过网页操作,也有 CLI
# https://render.com → New → Web Service → Connect GitHub

# 或用 Blueprint(render.yaml)
# render.yaml - Blueprint 配置
services:
  - type: web  # Web 服务
    name: my-api
    runtime: node  # 运行时:node/python/docker
    buildCommand: npm install && npm run build  # 构建命令
    startCommand: npm start  # 启动命令
    envVars:
      - key: NODE_ENV
        value: production
      - key: DATABASE_URL
        fromDatabase:
          name: my-db
          property: connectionString  # 从数据库服务取连接串

  - type: pserv  # 私有服务(不暴露公网)
    name: worker
    runtime: node
    buildCommand: npm install
    startCommand: npm run worker

databases:
  - name: my-db
    plan: free  # 免费版 PostgreSQL

基本使用

部署 Node.js 应用

1. 网页 → Dashboard → New → Web Service
2. 连接 GitHub 仓库
3. 配置:
   - Name: my-app
   - Runtime: Node
   - Build Command: npm install
   - Start Command: npm start
4. 点击 Create Web Service
5. 等待构建部署完成
6. 访问分配的 .onrender.com 域名

数据库

Dashboard → New → PostgreSQL
- 免费版:256MB 存储,90天后删除
- 付费版:起步 $7/月

连接字符串自动通过环境变量注入

环境变量和密钥

Service → Environment → Add Environment Variable
可以手动添加或引用其他服务的变量

常见报错

报错信息原因解决方案
Build failed构建命令出错检查 buildCommand 和依赖
应用启动后立即停止没监听正确端口使用 process.env.PORT
免费版休眠15 分钟无请求自动休眠升级付费版或用健康检查保活
数据库 90 天删除免费版限制备份数据或升级

速查表

# 支持的服务类型
Web Service      # Web 应用/API($0-$85/月)
Static Site      # 静态站点(免费)
Private Service  # 内部服务
Background Worker  # 后台任务
Cron Job         # 定时任务
PostgreSQL       # 数据库
Redis            # 缓存

# 免费版限制
# Web Service: 每月 750 小时,15分钟无请求休眠
# Static: 100GB 带宽/月
# PostgreSQL: 256MB,90天有效
# 自动部署:支持

# 付费版起步
# Web Service: $7/月(Starter)
# PostgreSQL: $7/月(256MB → 不会过期)

参考:Render 官网 | Render 文档 | Blueprint 说明