istio/app_sidecar_base_centos_8本镜像专为 Istio 服务网格的测试工作设计,旨在提供轻量级、可集成的测试环境,支持 Istio 组件功能验证、配置有效性检测及兼容性测试。通过封装 Istio 测试所需的基础工具和运行时环境,简化 Istio 服务网格在开发、测试及部署阶段的验证流程。
主要用途包括:
istioctl、kubectl、Envoy 调试工具等)kubeconfig 文件)拉取镜像
bashdocker pull [镜像仓库地址]/istio-test:latest # 替换为实际镜像仓库地址
运行测试容器
基础命令格式:
bashdocker run -it --rm \ -v /path/to/local/testcases:/testcases \ # 挂载本地测试用例目录 -v ~/.kube/config:/root/.kube/config \ # 挂载 Kubernetes 配置(如需集群内测试) --network=host \ # 共享主机网络(便于访问本地 Istio 环境) [镜像仓库地址]/istio-test:latest \ /testcases/run_tests.sh # 执行测试脚本
查看测试结果
测试输出默认打印至控制台,或通过 -v /path/to/output:/results 挂载目录保存报告。
在 .gitlab-ci.yml 中添加测试阶段配置:
yamlstages: - test istio-test: stage: test image: [镜像仓库地址]/istio-test:latest script: - cd /testcases - ./run_tests.sh --type=integration # 执行集成测试 artifacts: paths: - /testcases/report/ # 保存测试报告 only: - main - /^release-.*$/
bashdocker run -it --rm \ -v $(pwd)/testcases:/testcases \ # 本地测试用例目录(含测试脚本和配置) -v ~/.kube/config:/root/.kube/config \ # 访问 Kubernetes 集群 --name istio-test-local \ [镜像仓库地址]/istio-test:latest \ sh -c "cd /testcases && ./validate-istio-config.sh" # 验证 Istio 配置有效性
bashdocker run -d --name istio-e2e-test \ -v $(pwd)/e2e-tests:/e2e \ -e ISTIO_VERSION=1.19.0 \ # 指定测试的 Istio 版本 -e TEST_TYPE=e2e \ # 测试类型:端到端 --network=container:istio-proxy \ # 与 Envoy 容器共享网络命名空间 [镜像仓库地址]/istio-test:latest \ /e2e/run_e2e.sh
yaml# docker-compose.yml version: '3' services: unit-test: image: [镜像仓库地址]/istio-test:latest volumes: - ./unit-tests:/testcases command: /testcases/run_unit.sh environment: - TEST_TYPE=unit integration-test: image: [镜像仓库地址]/istio-test:latest volumes: - ./integration-tests:/testcases - ~/.kube/config:/root/.kube/config command: /testcases/run_integration.sh environment: - TEST_TYPE=integration - TARGET_NAMESPACE=istio-system
| 参数/环境变量 | 说明 | 默认值 | 可选值 |
|---|---|---|---|
ISTIO_VERSION | 指定测试目标 Istio 版本 | latest | 如 1.18.0, 1.19.0 |
TEST_TYPE | 测试类型 | integration | unit, integration, e2e |
TARGET_NAMESPACE | 测试目标 Kubernetes 命名空间 | default | 任意存在的命名空间 |
REPORT_PATH | 测试报告输出路径 | /results | 容器内绝对路径 |
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务