管理 TeamCity 许可证
具有系统管理员角色的用户可以在 管理 | 许可证 页面上管理 TeamCity 服务器和代理许可证。 我们建议激活您的服务器许可证,即使是免费的专业版,以确保系统管理员及时收到有关 TeamCity 服务器安全更新的重要电子邮件通知。
对于付费许可证用户,激活许可证可带来“设置并忘记”体验:一旦您的实例与 JetBrains Account (JBA)关联,您就不再需要为每次购买的额外代理批次或每次服务器许可证更新手动输入许可证密钥。 TeamCity 会自动检索所有当前有效的许可,并即时应用它们。
激活许可证
如果您可以访问 JetBrains Account ,并且您的 TeamCity 服务器的机器已连接到互联网并能够通过 HTTPS 定期与 account.jetbrains.com通信,请执行以下操作以激活许可证:
导航到 管理 | 许可证 页面。
点击 获取许可证密钥 并登录到您的 JetBrains Account。 请注意,如果服务器已经有一个活动许可证,TeamCity 不会显示此按钮。 如果您的服务器使用的是试用许可证,请在切换到付费版本之前 停用它。
选择您要激活的服务器许可证。 此页面显示所有组织和团队拥有的许可证,您对此具有管理员权限。 有关激活许可证所需权限的信息,请参见此页面: 激活本地团队工具许可证所需的权限。

点击 获取许可证密钥 以确认。 激活密钥将自动传输到您的 TeamCity 服务器。 您还可以手动复制密钥并将其粘贴到 TeamCity 我已经有一个密钥 页面上的 许可证 字段中。
- 情况 1:您不是 JetBrains 账号管理员
解决方案:申请 激活 TeamCity 许可证所需的权限。 或者,按照上述相同的步骤操作,并请求您的 JetBrains Account 管理员 执行您无权限执行的操作。
在 Administration | Licenses 页面,右键点击 Get License Key 按钮并复制链接。
将此链接发送给您的 JBA 管理员。 此链接包含您唯一的 TeamCity 实例密钥,看起来如下:
https://account.jetbrains.com/license/activate?product=TCS&instPubKey=<your_public_key>。
一旦管理员点击此链接并激活许可证,您的 TeamCity 服务器将自动应用它。 所有未来的许可证更新(包括构建代理许可证的分配和到期)都会自动传达给您的服务器;在激活完成后,您不再需要管理员的协助。
- 案例 2:您的 TeamCity 服务器机器未连接到互联网
解决方案: 与之前的情况类似,您可以使用 TeamCity 中生成的激活链接。
在 Administration | Licenses 页面,右键点击 Get License Key 按钮并复制链接。
请在具有 JetBrains Account 访问权限的受信设备上打开此链接。 此链接包含您唯一的 TeamCity 实例密钥,看起来如下:
https://account.jetbrains.com/license/activate?product=TCS&instPubKey=<your_public_key>。在 JetBrains Account 中激活许可证后,复制或保存激活密钥。

在 TeamCity Licenses 页面,点击 I already have a key并粘贴激活码。
请注意,由于离线 TeamCity 服务器无法从 JBA 接收自动更新,因此每当服务器许可证续订或购买额外代理时,您需要复制并粘贴 服务器 许可证密钥。
激活现有的传统许可
之前购买了 TeamCity 许可证的现有客户仍然可以通过点击 输入新的许可证密钥 按钮并插入许可证密钥来使用传统工作流程。 然而,建议您切换到 JetBrains Account 基于帐户的工作流程,以便从重要的安全电子邮件通知和自动许可证更新中受益。
要激活您当前活动的传统服务器许可证,请在 TeamCity UI 中点击 获取许可证密钥 以进入 JetBrains Account。 您的旧版许可证应在所有可用许可证列表中被识别并预先选择。 请确保这是正确的许可证,并按照屏幕上的指示继续操作。
如果 JetBrains Account 无法识别您的旧版许可,请按照以下显示的替代方法使用:
转到 TeamCity 中的 管理 | 许可证 页面。
在“活动许可证密钥”表下点击 下载哈希离线密钥。
点击 获取许可证密钥 并登录到您的 JetBrains Account。
您应该能够看到“已经在服务器上拥有许可证密钥?”的选项卡,建议您转换现有的密钥。 点击 上传许可证密钥 并上传在步骤 2 中生成的“teamcity-offline-keys.txt”文件。
查看有关您的许可证的信息,然后点击 获取许可证密钥 以生成更新的密钥。
将生成的密钥粘贴到 管理 | 许可证 页面上。
停用许可证
您可能希望停用服务器许可证以切换到您拥有的另一个服务器许可证或 将其转移给拥有独立 TeamCity 实例的另一个团队。
停用许可证与 激活过程相反:您需要从 TeamCity 中删除许可证,并且(可选)在 JetBrains Account 中停用它。
要从 TeamCity 中移除许可证,请点击 停用 ,位于 管理 | 许可证 页面上。 如果您拥有付费许可证,您的服务器将恢复为免费的 Professional 级别。
在 TeamCity 中点击 停用 后,您可以导航到您的 JetBrains Account 以完成停用过程。
如果您不完成此步骤,服务器许可(虽然在 TeamCity 中处于非活动状态)将仍然与此特定服务器实例关联。 这意味着您无法在另一台服务器上激活它。
- 情况 1:您不是 JetBrains Account 管理员或 TeamCity 服务器离线
解决方案:与激活过程类似,复制 停用 按钮链接并将其发送给您的 JetBrains Account 管理员。
- 情况二:您忘记停用服务器许可并卸载了 TeamCity 服务器实例。 许可证现在链接到一个不存在的服务器,并且不能转移到另一个实例或团队
解决方案:导航到 JetBrains Account,找到此活动许可证,然后点击 停用 链接。

这是一种应急变通方法,仅在无法访问 TeamCity 实例时使用。 在任何其他情况下,请从 TeamCity UI 启动停用流程。
管理 Build Agent 许可证
与个人帐户不同,组织 JetBrains Account 可以创建 团队来根据成员的任务分配不同的许可证。
对于 TeamCity,附加代理许可证应归属于拥有服务器许可证的同一个团队。 否则,在激活服务器许可证后,您的付费代理将不可用。 此外,任何影响团队的操作(例如,添加新的代理许可证)也会更改相应的 服务器密钥。 在 离线模式 下工作时,特别需要记住这一点。
如果您需要 将代理许可证转移到其他团队 ,您不需要在 TeamCity 中停用任何服务器许可证。 鉴于双方团队的服务器许可证均已激活,两个 TeamCity 服务器将自动更新其 代理 数量。
另请参见: 管理 TeamCity 构建代理。
离线模式
JetBrains 帐号激活机制的本质意味着 TeamCity 需要定期连接到 account.jetbrains.com 以刷新有关拥有的服务器和代理许可证的信息。 这允许您的构建服务器自动检索当前的许可证信息,包括分配给您 团队的服务器和代理许可证。
尽管如果 TeamCity 无法访问 account.jetbrains.com 您将无法从这些自动更新中受益,但仍然建议激活 TeamCity 许可证,因为这可以使您的系统管理员能够及时收到有关服务器安全更新的电子邮件通知。 请参见 激活许可证 部分以获取说明。
在 团队中进行的所有与许可证相关的更改都会影响 服务器密钥 (即使更改与服务器无直接关系,例如添加或移除额外代理)。 由于 TeamCity 在离线模式下无法自动获取这些更新,您需要手动刷新您的服务器密钥。 要执行此操作,请从 JetBrains Account 页面复制一个 服务器许可证密钥…

...并将其粘贴到 TeamCity 许可证 页面上的 输入您的许可证密钥 字段中。

同一页面允许您获取传统许可证密钥(旧版许可证密钥 链接)。 如果您是个人(非组织)客户,请参考此知识库文章以获取更多信息: Downloading TeamCity legacy license keys。
限制和要求
单个许可证只能在任何给定时间内在单个运行的 TeamCity 服务器上使用。 在主节点之外运行附加的 TeamCity 节点目前不需要单独的许可证。
如果您创建了服务器的副本并同时运行两个服务器,您应确保每个许可证密钥只在单个服务器上使用。 您可以使用试用(有限期)许可证来运行用于测试/非生产目的的服务器。 许可证不绑定到特定的服务器实例、机器等。 唯一的限制是许可证不能同时在多个服务器上使用。
当您已经拥有许可证并购买更多许可证时,您可以 请求 JetBrains 销售团队将新许可证与已购买的许可证统一到相同的维护到期日期。 许可证的费用随之按比例降低。
当您购买多个许可证时,欢迎您 联系我们的销售部门,了解可用的批量折扣。