本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
opencensus-php是基于***PHP镜像构建的Docker镜像,预集成了OpenCensus PHP库。OpenCensus是一个开源分布式追踪框架,旨在帮助开发者收集、分析和导出分布式系统中的性能数据。该镜像简化了PHP应用集成分布式追踪的流程,无需手动安装依赖,可直接用于生产或开发环境,支持将追踪数据导出至主流后端系统(如Jaeger、Zipkin、Stackdriver等)。
从Docker Hub拉取最新版本镜像:
docker pull opencensus/php:latest
以Jaeger为导出后端的基本示例:
docker run -d \ --name opencensus-php-example \ -e OPENCENSUS_TRACER_EXPORTER=jaeger \ -e OPENCENSUS_EXPORTER_JAEGER_AGENT_HOST=jaeger-agent \ -e OPENCENSUS_EXPORTER_JAEGER_SERVICE_NAME=php-service \ -e OPENCENSUS_SAMPLER=always_on \ -v $(pwd)/app:/app \ -p 8080:80 \ opencensus/php:latest \ php -S 0.0.0.0:80 /app/index.php
配合Jaeger后端的Docker Compose示例(docker-compose.yml):
version: '3' services: jaeger: image: jaegertracing/all-in-one:latest ports: - "***:***" # Jaeger UI - "6831:6831/udp" # Jaeger Agent (Thrift compact) environment: - COLLECTOR_ZIPKIN_HOST_PORT=:9411 php-app: image: opencensus/php:latest depends_on: - jaeger environment: - OPENCENSUS_TRACER_EXPORTER=jaeger - OPENCENSUS_EXPORTER_JAEGER_AGENT_HOST=jaeger - OPENCENSUS_EXPORTER_JAEGER_AGENT_PORT=6831 - OPENCENSUS_EXPORTER_JAEGER_SERVICE_NAME=php-app - OPENCENSUS_SAMPLER=probability - OPENCENSUS_SAMPLER_RATE=0.5 # 50%采样率 volumes: - ./app:/app ports: - "8080:80" command: php -S 0.0.0.0:80 /app/index.php
启动服务:
docker-compose up -d
在PHP应用中使用OpenCensus追踪请求(app/index.php):
<?php require_once __DIR__ . '/vendor/autoload.php'; // 初始化追踪器(镜像已自动配置,无需手动初始化) $tracer = Opencensus\Trace\Tracer::instance(); // 创建根跨度 $span = $tracer->startSpan('php-app-root'); $tracer->inScope($span); try { // 模拟业务逻辑 usleep(***); // 100ms延迟 // 创建子跨度(如数据库调用) $dbSpan = $tracer->startSpan('database-query'); $tracer->inScope($dbSpan); usleep(50000); // 模拟数据库查询耗时 $dbSpan->end(); } finally { $span->end(); // 确保根跨度结束 } echo "Hello, OpenCensus!\n"; ?>
通过环境变量调整镜像行为,常用参数如下:
| 环境变量 | 描述 | 默认值 |
|---|---|---|
OPENCENSUS_TRACER_EXPORTER | 追踪数据导出器类型,可选值:jaeger、zipkin、stackdriver、null | null(不导出数据) |
OPENCENSUS_SAMPLER | 采样策略,可选值:always_on、always_off、probability | always_off |
OPENCENSUS_SAMPLER_RATE | 概率采样率(0.0~1.0),仅当SAMPLER=probability时生效 | 0.01(1%) |
OPENCENSUS_EXPORTER_JAEGER_AGENT_HOST | Jaeger Agent主机地址 | localhost |
OPENCENSUS_EXPORTER_JAEGER_AGENT_PORT | Jaeger Agent端口 | 6831 |
OPENCENSUS_EXPORTER_JAEGER_SERVICE_NAME | 服务名称,用于追踪系统中标识当前服务 | php-service |
OPENCENSUS_EXPORTER_ZIPKIN_ENDPOINT | Zipkin服务端点(如[***]) | - |
OPENCENSUS_EXPORTER_STACKDRIVER_PROJECT_ID | Stackdriver项目ID(仅用于GCP环境) | - |
如需更复杂配置,可挂载自定义opencensus.yaml配置文件至容器/etc/opencensus/目录:
docker run -v $(pwd)/opencensus.yaml:/etc/opencensus/opencensus.yaml ...
配置文件格式参考OpenCensus PHP***文档。
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429