
epicmorg/teamcity-agent这是官方的 JetBrains TeamCity 最小构建代理镜像。
构建代理 连接到 TeamCity 服务器并生成实际的构建进程。您可以使用 jetbrains/teamcity-server 镜像运行 TeamCity 服务器。
此最小镜像仅包含 TeamCity 代理,不附带版本控制系统客户端等工具。它适用于简单构建,也可作为自定义镜像的基础。对于 Java 或 .NET 开发,建议使用默认构建代理镜像 jetbrains/teamcity-agent。
从 Docker Hub 仓库拉取 TeamCity 最小镜像:
jetbrains/teamcity-minimal-agent
bashdocker run -it -e SERVER_URL="<TeamCity服务器URL>" \ -v <代理配置文件夹路径>:/data/teamcity_agent/conf \ jetbrains/teamcity-minimal-agent
bashdocker run -it -e SERVER_URL="<TeamCity服务器URL>" \ -v <代理配置文件夹路径>:C:/BuildAgent/conf \ jetbrains/teamcity-minimal-agent
参数说明:
SERVER_URL:TeamCity 服务器的完整 URL(必填),注意localhost通常不可用,因为它指向容器内部的本地主机<代理配置文件夹路径>:主机上用于持久化代理配置的目录,建议指定以保留授权状态等配置,每个代理需映射不同的文件夹
注意:自 2020.1 版本起,TeamCity 代理 Docker 镜像以非 root 用户运行。有关可能受影响的用例,请参考 升级说明。
首次运行代理时,需通过 TeamCity 服务器 UI 进行授权:在浏览器中访问 未授权代理 页面完成授权。代理的授权信息存储在配置文件夹中,使用相同配置文件夹启动新容器时,代理名称和授权状态将保留。
| 环境变量 | 说明 |
|---|---|
SERVER_URL | TeamCity 服务器的 URL(必填),代理将连接到此服务器 |
AGENT_NAME | (可选)代理在 TeamCity UI 中显示的名称,未设置则自动生成 |
AGENT_TOKEN | (可选)代理授权令牌,未设置时需通过 TeamCity UI 授权 |
OWN_ADDRESS | (可选,仅 Linux)代理绑定的 IP 地址,未设置则自动检测 |
OWN_PORT | (可选,仅 Linux)代理绑定的端口,默认 9090 |
有关 Windows 容器中的已知问题,请参阅 TeamCity 文档。
可通过以下步骤自定义镜像:
bashdocker run -it -e SERVER_URL="<TeamCity服务器URL>" \ -v <代理配置文件夹路径>:/data/teamcity_agent/conf \ --name="my-customized-agent" \ jetbrains/teamcity-minimal-agent
bashdocker exec -it my-customized-agent bash
根据需求进行修改(安装工具、配置环境等)
提交为新镜像:
bashdocker commit my-customized-agent <目标镜像仓库>
本镜像基于 TeamCity 许可证 提供。TeamCity 可免费永久使用,限制为 100 个构建配置(任务)和 3 个代理。许可政策详情。
请将问题或建议报告至官方 TeamCity 问题跟踪器。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务