3文档

Studio · 系统管理

部署环境

部署环境决定应用部署到哪里、怎样访问、谁能部署:预览环境放每个 PR 的预览,预发布环境给团队试用,受保护的生产环境每次部署都要审批人批准。

部署环境由管理员在「发布 › 部署环境」里管理。每个环境有自己的一组应用,改动一个环境,不会影响别的环境的应用。

环境 怎样来的 用来做什么
预览 Studio 安装后自动创建 每个 PR 的预览,验收时亲自试一遍
预发布 管理员添加 合并后自动部署,团队上线前试用
生产 管理员添加,Studio 不会自动创建 正式运行的业务系统,每次部署都要批准

两种运行方式

添加环境时先选运行方式,创建后不能更换:

运行方式 应用运行在哪里 适合
在 Studio 内运行 Studio 所在的服务器上,不需要 Docker。首次访问时启动,无人访问时停止 预览
Docker Studio 所在服务器的 Docker 上,每个应用一个容器,互相隔离 预发布、生产

Docker 方式部署时,按版本的镜像摘要拉取镜像,先启动新容器,健康检查通过后才把访问切过去;新版本一直不健康时,旧容器继续服务,这次部署失败。回滚用同样的方式部署之前的镜像。

使用 Docker 方式前,要在 Studio 的 config.yml 里打开 Docker 运行方式(releases.docker.enabled),并让运行 Studio 的用户能访问 Docker。

添加环境

  1. 打开「发布 › 部署环境」,点「添加环境」,选运行方式。
  2. 填写名称和环境 ID,例如“预发布”、staging。环境 ID 会出现在访问地址里,创建后不能修改。
  3. 「访问地址规则」:应用在这个环境里的访问地址,用 {appId} 代表应用,例如 https://apps.example.com/{appId}/。
  4. Docker 环境选择「镜像仓库」,也就是 CI 推送镜像的仓库,或者新建一个,填写地址和拉取凭据。
  5. 设置策略,见下一节。
  6. 保存前点「测试连接」,确认能连通。

「应用」一栏可以设置这个环境最多容纳多少个应用,以及应用无人访问多久后停止、多久后休眠。停止后释放内存,下次访问时自动启动;休眠后还会删除解压的文件,保留配置和数据,下次访问时重新准备,需要更长时间。

受保护的环境和审批人

打开「受保护」,这个环境的每一次部署,不论由人、Agent 还是 CI 发起,包括回滚,都变成一份部署申请,等审批人批准。审批人批准时,要再输入一次应用 ID。

审批人可以选:

  • 项目负责人:部署到这个应用的代码仓库所属项目的负责人;
  • 管理员:所有者和管理员;
  • 指定的人。

任意一位审批人批准即可;发起申请的人不能批准自己的申请。没有选审批人时,由管理员决定。审批人做什么,见 批准上线与回滚。

生产环境先备份

Studio 部署前不会自动备份应用的数据库。生产环境的数据库请自己定期备份。

预览环境

预览环境在 Studio 安装后自动创建,运行方式是在 Studio 内运行,不受保护。默认最多同时运行 20 个预览,10 分钟无人访问就停止,24 小时后休眠。

  • 预览首次部署时加载示例数据,自动生成初始管理员,不包含企业的真实数据。
  • PR 合并或关闭后,它的预览自动删除。
  • 预览缺少某个变量时,任务页的预览区会列出缺的变量;能管理环境的人可以给整个预览环境设置,之后所有的预览都用上。

正式使用时,建议让预览用单独的域名,不和 Studio 共用同一个地址,并让运行预览的进程使用另一个系统用户,读不到 Studio 的配置,见 配置项。

环境变量

部署出来的应用读取的变量,可以设在环境上,所有在这个环境里的应用都用得上;也可以设在单个应用上。应用自己的变量优先。密钥加密保存,之后不再显示。

NocoBase 3 文档 · 草稿 2026-10-24