
testkubeenterprise/testkube-enterprise-apiTestkube Enterprise API 镜像提供 Testkube 企业版的核心 API 服务,作为企业级测试自动化平台的控制中心。该镜像封装了用于管理测试资源、执行测试工作流、集成外部系统及提供数据分析的 RESTful API 服务,支持企业级测试生命周期管理、多团队协作及复杂测试场景的自动化需求。
适用于需要统一管理多团队测试资源的大型企业,支持 Web 应用、API、数据库、Kubernetes 等多类型测试场景的自动化执行与结果跟踪。
满足包含前置条件校验(如环境就绪性检查)、多阶段测试(单元测试→集成测试→E2E测试)、依赖任务(如测试失败后自动回滚环境)的复杂工作流编排需求。
支持跨团队共享测试资源(如公共测试环境),同时通过租户隔离保护敏感数据,适配大型研发组织内多团队并行测试的协作模式。
针对***、***等强合规行业,提供测试过程全链路审计日志、测试结果不可篡改存储及合规报告生成能力,满足 SOX、HIPAA 等合规要求。
通过 docker run 直接启动 API 服务(单节点模式,适用于测试环境):
bashdocker run -d \ --name testkube-enterprise-api \ -p 8080:8080 \ # API 服务端口 -p 9090:9090 \ # 监控指标端口 -e API_PORT=8080 \ -e METRICS_PORT=9090 \ -e DB_HOST=postgres-host \ -e DB_PORT=5432 \ -e DB_USER=testkube \ -e DB_PASSWORD=secure-password \ -e DB_NAME=testkube_enterprise \ -e REDIS_HOST=redis-host \ -e REDIS_PORT=6379 \ -e LICENSE_KEY=your-enterprise-license-key \ -e LOG_LEVEL=info \ testkube/enterprise-api:latest
适用于本地开发或小规模测试环境,集成依赖服务(PostgreSQL、Redis):
yaml# docker-compose.yml version: "3.8" services: api: image: testkube/enterprise-api:latest ports: - "8080:8080" - "9090:9090" environment: - API_PORT=8080 - METRICS_PORT=9090 - DB_HOST=postgres - DB_PORT=5432 - DB_USER=testkube - DB_PASSWORD=testkube-pass - DB_NAME=testkube_enterprise - REDIS_HOST=redis - REDIS_PORT=6379 - REDIS_DB=0 - LICENSE_KEY=${LICENSE_KEY} - LOG_LEVEL=info - CORS_ALLOWED_ORIGINS=[***] depends_on: - postgres - redis postgres: image: postgres:14-alpine environment: - POSTGRES_USER=testkube - POSTGRES_PASSWORD=testkube-pass - POSTGRES_DB=testkube_enterprise volumes: - postgres-data:/var/lib/postgresql/data redis: image: redis:7-alpine volumes: - redis-data:/data volumes: postgres-data: redis-data:
启动命令:
bashLICENSE_KEY=your-license-key docker-compose up -d
| 环境变量 | 描述 | 默认值 | 必需性 |
|---|---|---|---|
API_PORT | API 服务监听端口 | 8080 | 否 |
METRICS_PORT | 监控指标(Prometheus)端口 | 9090 | 否 |
LOG_LEVEL | 日志级别(debug/info/warn/error) | info | 否 |
LICENSE_KEY | Testkube Enterprise 授权密钥 | - | 是 |
TENANT_MODE | 多租户模式(off/namespace/tenant-id) | off | 否 |
| 环境变量 | 描述 | 默认值 | 必需性 |
|---|---|---|---|
DB_HOST | 数据库主机地址 | - | 是 |
DB_PORT | 数据库端口 | 5432 | 否 |
DB_USER | 数据库用户名 | - | 是 |
DB_PASSWORD | 数据库密码 | - | 是 |
DB_NAME | 数据库名称 | testkube_enterprise | 否 |
DB_SSL_MODE | SSL 连接模式(disable/require/verify-full) | disable | 否 |
| 环境变量 | 描述 | 默认值 | 必需性 |
|---|---|---|---|
REDIS_HOST | Redis 主机地址 | - | 是 |
REDIS_PORT | Redis 端口 | 6379 | 否 |
REDIS_DB | Redis 数据库索引 | 0 | 否 |
REDIS_PASSWORD | Redis 认证密码 | - | 否 |
TASK_QUEUE_SIZE | 最大任务队列长度 | *** | 否 |
| 环境变量 | 描述 | 默认值 | 必需性 |
|---|---|---|---|
JWT_SECRET | JWT 令牌签名密钥(用于 API 认证) | 自动生成随机值 | 否 |
JWT_EXPIRY_HOURS | JWT 令牌有效期(小时) | 24 | 否 |
CORS_ALLOWED_ORIGINS | 允许跨域请求的源(逗号分隔) | * | 否 |
RBAC_ENABLED | 是否启用 RBAC 权限控制 | true | 否 |
Testkube Enterprise 推荐在 Kubernetes 集群通过 Helm Chart 部署,API 服务以 Deployment 形式运行,配合 Service、Ingress 及配置 ConfigMap/Secret 管理:
yaml# 示例 Helm values.yaml 片段(API 服务配置) api: replicaCount: 3 # 多副本保证高可用 image: repository: testkube/enterprise-api tag: 1.14.0 env: LICENSE_KEY: "${ENTERPRISE_LICENSE}" DB_HOST: "postgres-service.testkube.svc.cluster.local" DB_USER: "${DB_USER}" DB_PASSWORD: "${DB_PASSWORD}" REDIS_HOST: "redis-service.testkube.svc.cluster.local" TENANT_MODE: "namespace" # 按 Kubernetes 命名空间隔离租户 RBAC_ENABLED: "true" resources: requests: cpu: 500m memory: 1Gi limits: cpu: 1000m memory: 2Gi service: type: ClusterIP port: 8080 ingress: enabled: true hosts: - host: api.testkube.example.com paths: - path: / pathType: Prefix
使用 4.2.2 节的 docker-compose.yml 配置,配合 .env 文件管理敏感信息:
ini# .env 文件 LICENSE_KEY=tk-enterprise-xxxx-xxxx-xxxx DB_USER=dev-user DB_PASSWORD=dev-pass JWT_SECRET=dev-only-jwt-secret-key
启动后通过 http://localhost:8080/health 验证服务状态,通过 http://localhost:8080/swagger 访问 API 文档(Swagger UI)。

manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务