如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Testcontainers Cloud Operator for OpenShift是专为OpenShift容器平台设计的Kubernetes操作器(Operator),旨在简化Testcontainers在OpenShift集群中的集成与管理。该操作器通过自动化测试容器的创建、启动、扩展和清理流程,帮助开发与测试团队高效构建、部署和维护容器化测试环境,降低测试基础设施的手动管理成本,提升测试流程的稳定性与可重复性。
前提条件
oc命令行工具已配置并具备集群管理员权限部署步骤
添加Operator CatalogSource
创建CatalogSource资源以引入Testcontainers Cloud Operator仓库:
yamlapiVersion: operators.coreos.com/v1alpha1 kind: CatalogSource metadata: name: testcontainers-cloud-operator-catalog namespace: openshift-marketplace spec: sourceType: grpc image: testcontainers/testcontainers-cloud-operator-catalog:latest displayName: Testcontainers Cloud Operator Catalog publisher: Testcontainers
应用配置:oc apply -f catalog-source.yaml
创建OperatorGroup
在目标命名空间(如test-env)创建OperatorGroup,定义操作器作用范围:
yamlapiVersion: operators.coreos.com/v1 kind: OperatorGroup metadata: name: testcontainers-operator-group namespace: test-env spec: targetNamespaces: - test-env
应用配置:oc apply -f operator-group.yaml
部署Operator
创建Subscription资源安装Operator:
yamlapiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: testcontainers-cloud-operator namespace: test-env spec: channel: stable name: testcontainers-cloud-operator source: testcontainers-cloud-operator-catalog sourceNamespace: openshift-marketplace startingCSV: testcontainers-cloud-operator.v1.0.0
应用配置:oc apply -f subscription.yaml
验证部署状态
检查Operator Pod运行状态:
bashoc get pods -n test-env | grep testcontainers-cloud-operator
自定义资源(CR)配置
通过创建TestcontainersConfig自定义资源定义测试环境配置,示例:
yamlapiVersion: testcontainers.cloud/v1alpha1 kind: TestcontainersConfig metadata: name: integration-test-config namespace: test-env spec: # 资源限制配置 resourceConstraints: cpuLimit: "1" # CPU限制(核) memoryLimit: "1Gi" # 内存限制 cpuRequest: "500m" # CPU请求 memoryRequest: "512Mi" # 内存请求 # 容器配置 containerConfig: imagePullPolicy: Always # 镜像拉取策略 imagePullSecret: "test-registry-secret" # 私有镜像仓库密钥(可选) # 隔离配置 isolation: enableNamespaceIsolation: true # 是否启用命名空间级隔离 networkPolicy: "deny-all-except-test" # 关联的网络策略名称
环境变量配置
Operator部署时可通过环境变量调整运行参数,常用配置如下:
| 环境变量名 | 描述 | 默认值 | 可选值 |
|---|---|---|---|
WATCH_NAMESPACE | 操作器监控的命名空间,多命名空间用逗号分隔 | ""(所有命名空间) | 具体命名空间名称 |
LOG_LEVEL | 日志输出级别 | info | debug/info/warn/error |
RECONCILIATION_INTERVAL | 资源状态同步间隔(秒) | 30 | 正整数 |
MAX_CONCURRENT_TESTS | 最大并发测试容器数 | 10 | 正整数 |
CLEANUP_DELAY | 测试完成后容器清理延迟时间(秒) | 60 | 正整数 |
bashoc delete subscription testcontainers-cloud-operator -n test-env
bashoc delete operatorgroup testcontainers-operator-group -n test-env
bashoc delete catalogsource testcontainers-cloud-operator-catalog -n openshift-marketplace
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务