Skip to content
FunCoding

Search

Search docs, Skills and MCP

Dockerfile 与环境路径

定义基础镜像和构建上下文,理解 environment.json 的特殊路径规则。

This page has not been translated into English yet. The original Chinese version is shown below.

Dockerfile 用于固定系统工具、编译器、调试器和基础镜像。Cursor 自行克隆仓库并检出正确提交,不要 COPY 整个项目来代替这个流程。

最小配置

项目 .cursor/environment.json 可引用 .cursor/Dockerfile:

{
  "build": {
    "dockerfile": "Dockerfile",
    "context": ".."
  },
  "install": "pnpm install && ./custom_script.sh"
}

示例 install 只适用于实际提供 pnpm 项目和脚本的仓库,应换成项目的真实准备流程。私有包下载凭据使用 build secrets。

路径规则

build.dockerfile 和 build.context 相对于 .cursor。省略 context 时默认为 .cursor,但值 .、./、.. 被特殊处理为仓库根。

因此想在 Dockerfile 中用裸文件名 COPY .cursor 内文件时,应省略 context,而不是把它设为 .。install 始终从项目根运行。

缓存与分支

Dockerfile 使用 layer cache,变动后重建受影响层。Build 配置来自环境默认分支;测试 feature branch 的配置变更时,先提交并推送该分支,再从对应分支启动 Agent。

启动会复用 active Build 的准备状态,然后检出指定分支。依赖有变化时,Agent 可按 install 指令刷新环境;不要假定缓存依赖与所有分支完全相同。

Docker 与桌面支持

云端支持 Docker,但它运行在另一层容器环境内。简单流程需要安装 Docker 并启动 daemon;复杂环境官方推荐 fuse-overlayfs、iptables-legacy,并确保运行用户具备 Docker 权限。完整安装示例以官方页面为准。

Dockerfile 基于 Debian/Ubuntu 的仓库支持 computer use,其他 Linux 发行版需联系支持确认。默认 VM 的 CPU 与内存有限,Enterprise 可联系支持申请提高限制,本文不猜测未公开资源数值。