Docker 部署

先决条件

  • Docker
  • Docker Compose v2.0.0+
  • Make (可选)
  • 6 GB 内存用于应用程序
  • 14 GB 磁盘空间

获取并运行演示

  1. 克隆演示存储库

    git clone https://github.com/open-telemetry/opentelemetry-demo.git
    
  2. 切换到演示文件夹

    cd opentelemetry-demo/
    
  3. 启动演示1

    make start
    
    docker compose up --force-recreate --remove-orphans --detach
    
  4. (可选) 启用 API 可观测性驱动的测试1

    make run-tracetesting
    
    docker compose -f docker-compose-tests.yml run traceBasedTests
    

验证网店和遥测

构建完镜像并启动容器后,您可以通过以下方式访问:

更改演示的主要端口号

默认情况下,演示应用程序将启动一个代理,处理所有绑定到 8080 端口的浏览器流量。要更改端口号,请在启动演示之前设置 ENVOY_PORT 环境变量。

  • 例如,要使用 8081 端口1

    ENVOY_PORT=8081 make start
    
    ENVOY_PORT=8081 docker compose up --force-recreate --remove-orphans --detach
    

自带后端

您很可能想将网店作为演示应用程序,用于您已有的可观测性后端(例如,现有的 Jaeger、Zipkin 实例,或者您选择的供应商之一)。

OpenTelemetry Collector 可用于将遥测数据导出到多个后端。默认情况下,演示应用程序中的 Collector 将合并两个文件的配置

  • otelcol-config.yml
  • otelcol-config-extras.yml

要添加您的后端,请使用编辑器打开文件 src/otel-collector/otelcol-config-extras.yml

  • 首先添加一个新的 exporter。例如,如果您的后端支持 OTLP over HTTP,请添加以下内容:

    exporters:
      otlphttp/example:
        endpoint: <your-endpoint-url>
    
  • 然后,为您想用于后端的遥测管道重写 exporters

    service:
      pipelines:
        traces:
          exporters: [spanmetrics, otlphttp/example]
    

供应商后端可能要求您添加额外的身份验证参数,请查阅其文档。某些后端需要不同的 exporter,您可以在 opentelemetry-collector-contrib/exporter 中找到它们及其文档。

更新 otelcol-config-extras.yml 后,运行 make start 来启动演示。过一会儿,您应该也能看到 traces 流入您的后端。


  1. docker-compose 已弃用。有关详细信息,请参阅 迁移到 Compose V2。 ↩︎ ↩︎ ↩︎


最后修改于 2025 年 11 月 13 日: Update docker-deployment.md (#8398) (39077dc3)