Coder:用Terraform管理云开发环境与AI代理
Coder给团队托管Terraform云开发环境和AI代理,模型密钥留在工作区之外。
GitHub coder/coder 更新 2026-09-18 分支 main 星标 14.8K 分叉 1.5K
Go TypeScript Terraform Kubernetes AI编码代理 自托管

🧭 决策指南

适合,如果你

  • 你要用Terraform统一创建EC2、Kubernetes Pod或Docker开发工作区。
    README要点“Define cloud development environments in Terraform”及其EC2、Kubernetes Pods、Docker Containers列表。
  • 你希望让Claude Code、Codex或OpenCode在自有基础设施执行编码任务。
    Integrations > Official列出Coding Agents,包括Claude Code、Codex和OpenCode;README说明Coder Agents运行在self-hosted infrastructure。
  • 你需要Anthropic、OpenAI、Google、Bedrock或自托管模型的集中治理。
    README要点列出这些模型来源,并说明Centralized model governance、cost tracking和audit logging。
  • 你需要通过VS Code或JetBrains Toolbox连接远程开发工作区。
    Integrations > Official列出VS Code Extension和JetBrains Toolbox Plugin。

不适合,如果你

  • 你的生产部署无法提供PostgreSQL 13或更高版本以及外部访问URL。
    Quickstart明确写道生产部署需添加“a PostgreSQL database (version 13 or later)”和“an external access URL”。
  • 你的部署环境不包含EC2、Kubernetes、Docker或README提到的其他工作区基础设施。
    README将EC2 VMs、Kubernetes Pods和Docker Containers列为工作区基础设施示例。
  • 你的合规策略不能接受GNU Affero General Public License v3.0。
    项目元数据标注许可协议为GNU Affero General Public License v3.0。

前置条件

  • Linux或macOS可使用README中的安装脚本;Windows可从GitHub Releases获取binary或installer。
  • 本地评估可使用内置数据库和*.try.coder.app访问URL。
  • 生产部署需要PostgreSQL 13或更高版本以及external access URL。
  • 工作区网络连接使用secure WireGuard tunnel。
  • 可选的模型来源包括Anthropic、OpenAI、Google、Bedrock和self-hosted。

第一步命令(README 原文)

curl -L https://coder.com/install.sh | sh

要注意

  • 不传生产参数时,Coder会使用内置数据库并设置*.try.coder.app访问URL。
    Quickstart明确说明Without these flags,Coder uses a built-in database and sets up a *.try.coder.app access URL。
  • 生产参数中的--postgres-url和--access-url必须按README示例配置。
    Quickstart给出的生产命令为coder server --postgres-url <url> --access-url <url>。
  • AI代理循环运行在控制平面,而不是工作区内部。
    README说明Coder Agents的loop executes in the control plane on your infrastructure。
  • 工作区内不放LLM凭据,但模型治理依赖AI Gateway等组件。
    README同时说明no API keys in workspaces,并在Documentation列出AI Gateway用于认证、审计和成本控制。

材料未说明

  • README没有说明EC2、Kubernetes和Docker各自支持的版本矩阵。
  • README没有给出控制平面、PostgreSQL或工作区的CPU、内存和存储最低要求。
  • README没有说明WireGuard网络在代理、防火墙或离线环境中的具体限制。
  • README没有说明Anthropic、OpenAI、Google、Bedrock和自托管模型的功能差异。
  • README没有说明Premium付费功能的具体清单、价格和规模限制。
  • README没有说明10位贡献者对应的维护分工或企业支持响应时间。
  • README没有说明1,030个Issue中未关闭问题的数量和严重性。

💡 深度解析

6
适合 我只有一台 Linux 或 macOS 机器,想先用 Docker 模板创建第一个工作区验证 Coder;README 的 Quickstart 是否足够完成评估?
适合读者: 想先在一台 Linux 或 macOS 机器上快速创建 Docker 工作区、验证远程开发和 AI 代理流程的小型研发团队负责人

适合用于评估,因为 README 给出了 Linux/macOS 安装脚本、启动服务器、创建 Docker 模板和首个工作区的完整最短路径;但这条路径不能直接视为生产部署方案。

  • 安装方式是官方 install.sh,适用于 Linux 和 macOS。
  • 启动 coder server 后,可在 http://localhost:3000 创建初始用户、Docker 模板并配置第一个工作区。
  • 未提供 PostgreSQL 和 external access URL 时,Coder 使用内置数据库,并设置 *.try.coder.app 评估地址。
  • README 明确把这套配置定位为 evaluation;生产环境要求 PostgreSQL 13+ 和 external access URL。

因此,验证 Docker 工作区和基本访问流程可以直接按 Quickstart 执行;若目标是公网或团队长期使用,应切换到生产部署设计。

  • Quickstart:"Try Coder with the install script on Linux and macOS"
  • Quickstart:"coder server"
  • Quickstart:"open http://localhost:3000 to create your initial user, create a Docker template, and provision your first workspace"
  • Quickstart:"Without these flags, Coder uses a built-in database and sets up a `*.try.coder.app` access URL for evaluation"
curl -L https://coder.com/install.sh | sh
材料未说明:README 未说明单机 Docker 评估所需的最低 CPU、内存和磁盘空间。;README 未说明 Quickstart 是否包含 Coder Agents、VS Code 和 JetBrains 集成的完整验证步骤。
适合 我们想在自有基础设施上运行 Claude Code、Codex 或 OpenCode,同时禁止把模型 API key 放进工作区;Coder Agents 是否满足身份追踪、模型治理和成本审计要求?
适合读者: 需要在企业自有基础设施上运行 Claude Code、Codex 或 OpenCode,并要求模型访问集中审计、按用户追踪且工作区不保存 LLM 密钥的 AI 平台工程师

适合,因为 Coder Agents 的代理循环运行在自托管控制平面,并明确设计为不把 API key 放入工作区;但高风险命令审批和模型服务本身的合规边界仍未由 README 完整说明。

  • README 将 Claude Code、Codex 和 OpenCode 列为可在 Coder 工作区中隔离运行的代理。
  • Coder 支持 Anthropic、OpenAI、Google、Bedrock 和 self-hosted 模型,避免限定单一供应商。
  • 官方描述包含“no LLM credentials in workspaces”“user identity on every action”,并提供 centralized model governance、cost tracking 和 audit logging。
  • AI Gateway 章节进一步说明其目标是集中认证、审计和成本控制。

因此,若核心约束是凭据不落入工作区和统一追踪调用,匹配度很高;若还需要细粒度审批、数据脱敏或特定模型合规证明,需要另行核实。

  • Self-Hosted Cloud Development Environments and AI Agents:"Delegate coding work to AI agents on your infrastructure"
  • Self-Hosted Cloud Development Environments and AI Agents:"Bring any model (Anthropic, OpenAI, Google, Bedrock, self-hosted)"
  • Self-Hosted Cloud Development Environments and AI Agents:"No LLM credentials in workspaces, user identity on every action"
  • Documentation:"AI Gateway: Centralize authentication, auditing, and cost controls for AI tooling"
  • Integrations / Official:"Run agents like Claude Code, Codex, and OpenCode isolated in Coder workspaces"
材料未说明:README 未说明 AI 代理可执行命令的审批粒度、网络隔离能力和数据外传控制方式。;README 未说明各模型供应商的计费数据如何采集,以及 self-hosted 模型的硬件和部署要求。
适合 我们已经用 Terraform 管理 EC2 和 Kubernetes 资源,还要同时支持 Docker 工作区;Coder 是否适合成为多个团队的统一开发环境控制平面?
适合读者: 负责企业平台工程、需要用 Terraform 管理 EC2、Kubernetes Pod 和 Docker 工作区,并为多个开发团队提供统一远程环境的基础设施工程师

适合,因为 Coder 把工作区基础设施、生命周期和访问入口放在同一个自托管平台中,但平台团队仍需承担控制平面和底层资源的运维。

  • README 明确支持用 Terraform 定义工作区,并列出 EC2 VMs、Kubernetes Pods 和 Docker Containers。
  • 工作区通过安全的 WireGuard 隧道连接,开发者可继续使用 VS Code 或 JetBrains,而不必更换编辑器。
  • 平台还提供工作区自动关停能力,适合控制长期闲置的云资源成本。
  • 生产部署需要 PostgreSQL 13 或更高版本及外部访问 URL;快速启动的内置数据库和 *.try.coder.app 地址只用于评估。

因此,它适合作为统一控制面,而不是替代现有云平台、Kubernetes 或 Terraform 运维能力。

  • Self-Hosted Cloud Development Environments and AI Agents:"Workspaces are defined with Terraform"
  • Self-Hosted Cloud Development Environments and AI Agents:"EC2 VMs, Kubernetes Pods, Docker Containers, etc."
  • Self-Hosted Cloud Development Environments and AI Agents:"automatically shut down when not used"
  • Quickstart:"For a production deployment, add a PostgreSQL database (version 13 or later) and an external access URL"
coder server --postgres-url <url> --access-url <url>
材料未说明:README 未说明多个团队或大规模工作区下控制平面需要的 CPU、内存、数据库容量和并发上限。;README 未说明同一套 Terraform 模板在 EC2、Kubernetes 和 Docker 之间复用时需要改动多少。
适合 我们团队已经标准化使用 VS Code 和 JetBrains Toolbox;如果工作区运行在 Kubernetes Pod 或 Docker 容器中,Coder 能否保留现有 IDE 入口?
适合读者: 负责给使用 VS Code 和 JetBrains Toolbox 的开发者交付远程环境、但不希望团队改用浏览器 IDE 的研发平台工程师

适合,因为 README 明确提供 VS Code 扩展和 JetBrains Toolbox 插件,并支持在 Docker、Kubernetes 和 OpenShift 上构建开发环境。

  • 官方 VS Code Extension 可以“一键”打开任意 Coder 工作区。
  • JetBrains Toolbox Plugin 同样支持一键打开工作区,说明接入路径覆盖两类现有 IDE。
  • Dev Containers 集成支持使用 devcontainer.json,运行时包括 Docker、Kubernetes 和 OpenShift。
  • 远程连接依赖安全的 WireGuard 隧道,因此实际体验仍取决于网络策略、代理配置和延迟;README 没有给出性能指标。

如果目标是保留现有桌面 IDE,而不是要求浏览器内编辑,Coder 的接入方向与约束是匹配的。

  • Integrations / Official:"VS Code Extension: Open any Coder workspace in VS Code with a single click"
  • Integrations / Official:"JetBrains Toolbox Plugin: Open any Coder workspace from JetBrains Toolbox with a single click"
  • Integrations / Official:"Build development environments using `devcontainer.json` on Docker, Kubernetes, and OpenShift"
  • Self-Hosted Cloud Development Environments and AI Agents:"connected through a secure Wireguard® tunnel"
coder server
材料未说明:README 未说明 VS Code 扩展和 JetBrains 插件支持的最低版本。;README 未提供高延迟网络、大型代码仓库索引或调试场景下的性能数据。
视情况 我们会修改 Coder 的 Go 和 TypeScript 代码,并通过网络向公司员工提供内部开发平台;GNU AGPLv3 是否会影响这种集成方式?
适合读者: 准备把 Coder 嵌入企业内部平台、会修改 Go 控制平面或 TypeScript 界面,并计划通过网络向员工提供服务的开源项目负责人

视情况,因为项目采用 GNU AGPLv3,而你的网络提供和修改行为可能触发企业需要评估的源代码开放义务;是否适配取决于集成边界和法律审查。

  • 项目数据明确标注许可证为 GNU Affero General Public License v3.0。
  • README 将 Coder 定义为 self-hosted platform,意味着企业可以在自己的基础设施上运行,而不等于可以忽略许可证条件。
  • 项目主要代码规模来自 Go,TypeScript 也占有较大比例;如果直接修改控制平面或界面,通常会涉及受许可代码的改动范围。
  • README 没有给出企业内部网络服务、闭源扩展、派生版本或插件边界的具体合规解释。

因此,单纯运行未必等同于分发,但“修改后通过网络向员工提供服务”必须在上线前由法务确认源代码提供、修改披露和内部模块隔离方式。

  • 项目核心数据:"license": "GNU Affero General Public License v3.0"
  • 项目核心数据:Go 32,490,987;TypeScript 9,734,073
  • README 首段:"Coder is a self-hosted platform for cloud development environments and AI coding agents"
  • README / Contributing:"New contributors are always welcome"
材料未说明:README 未说明 AGPLv3 对内部员工使用、网络修改版本、闭源插件和独立模板的具体适用边界。;README 未说明商业支持或 Premium 功能是否包含不同许可证条款。
视情况 我们的开发环境位于受限或 air-gapped 网络,需要私有 VS Code 扩展市场并接入 self-hosted 模型;Coder 是否能满足这两个边界条件?
适合读者: 负责隔离网络或 air-gapped 网络中的企业开发平台、需要私有 VS Code 扩展市场并使用自托管模型的基础设施工程师

视情况,因为 README 明确提供受限网络中的自托管扩展市场和 self-hosted 模型选项,但没有承诺完整 air-gapped 部署所需的每个组件都能离线运行。

  • 官方 Self-Hosted VS Code Extension Marketplace 被描述为适用于 restricted or airgapped networks,并与 code-server 集成。
  • Coder 的模型接入列表包含 self-hosted,说明模型不必依赖 Anthropic、OpenAI、Google 或 Bedrock 的公网服务。
  • 平台本身仍是自托管系统,工作区通过 WireGuard 隧道连接;网络拓扑和出站依赖需要由部署方确认。
  • 生产部署要求 PostgreSQL 13+ 和 external access URL,README 没有说明这两项在完全隔离网络中的实现方式。

若只是受限网络,匹配度较高;若要求完全无外部连接,必须先验证安装包、镜像、模型服务和更新流程。

  • Integrations / Official:"A private extension marketplace that works in restricted or airgapped networks"
  • Self-Hosted Cloud Development Environments and AI Agents:"Bring any model (Anthropic, OpenAI, Google, Bedrock, self-hosted)"
  • Self-Hosted Cloud Development Environments and AI Agents:"connected through a secure Wireguard® tunnel"
  • Quickstart:"For a production deployment, add a PostgreSQL database (version 13 or later) and an external access URL"
材料未说明:README 未列出完全 air-gapped 安装所需的离线镜像、依赖包、许可证校验和升级流程。;README 未说明 self-hosted 模型是否需要 GPU、支持哪些推理框架或最低资源规格。

✨ 核心亮点

  • Terraform统一定义EC2、Kubernetes Pod和Docker环境
  • Coder Agents在自有基础设施运行AI编码循环
  • 支持Anthropic、OpenAI、Google、Bedrock及自托管模型
  • WireGuard连接工作区且空闲资源自动关闭
  • 生产部署要求PostgreSQL 13或更高版本

🔧 工程化

  • 用Terraform模板描述工作区基础设施,支持EC2、Kubernetes和Docker
  • Coder Agents在控制平面运行,工作区不保存LLM API密钥
  • AI Gateway集中管理认证、审计和AI工具成本控制
  • Quickstart通过coder server在localhost:3000创建首个工作区

⚠️ 风险

  • 生产部署除PostgreSQL 13+外还需配置外部访问URL
  • 工作区依赖EC2、Kubernetes或Docker等基础设施后端
  • GNU AGPLv3.0可能影响集成和分发方式的合规判断
  • README未给出生产规模所需资源配置,仅指向validated architectures

👥 适合谁?

  • 使用Terraform管理EC2、Kubernetes或Docker开发环境的团队
  • 需要在自有基础设施运行Claude Code、Codex或OpenCode的团队
  • 需要集中治理模型认证、审计日志和AI成本的组织
  • 希望通过VS Code或JetBrains Toolbox连接远程工作区的开发者