# Instalar o Collector com Docker

LLMS index: [llms.txt](/llms.txt)

---

Os comandos a seguir baixam uma imagem Docker e executam o Collector em um
contêiner. Substitua `0.149.0` pela versão do Collector que você
deseja executar.

   <ul class="nav nav-tabs" id="tabs-1" role="tablist">
  <li class="nav-item">
      <button class="nav-link active"
          id="tabs-01-00-tab" data-bs-toggle="tab" data-bs-target="#tabs-01-00" role="tab"
          data-td-tp-persist="dockerhub" aria-controls="tabs-01-00" aria-selected="true">
        DockerHub
      </button>
    </li><li class="nav-item">
      <button class="nav-link"
          id="tabs-01-01-tab" data-bs-toggle="tab" data-bs-target="#tabs-01-01" role="tab"
          data-td-tp-persist="ghcr.io" aria-controls="tabs-01-01" aria-selected="false">
        ghcr.io
      </button>
    </li>
</ul>

<div class="tab-content" id="tabs-1-content">
    <div class="tab-body tab-pane fade show active"
        id="tabs-01-00" role="tabpanel" aria-labelled-by="tabs-01-00-tab" tabindex="1">
        <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sh" data-lang="sh"><span class="line"><span class="cl">docker pull otel/opentelemetry-collector:0.149.0
</span></span><span class="line"><span class="cl">docker run otel/opentelemetry-collector:0.149.0
</span></span></code></pre></div>
    </div>
    <div class="tab-body tab-pane fade"
        id="tabs-01-01" role="tabpanel" aria-labelled-by="tabs-01-01-tab" tabindex="1">
        <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sh" data-lang="sh"><span class="line"><span class="cl">docker pull ghcr.io/open-telemetry/opentelemetry-collector-releases/opentelemetry-collector:0.149.0
</span></span><span class="line"><span class="cl">docker run ghcr.io/open-telemetry/opentelemetry-collector-releases/opentelemetry-collector:0.149.0
</span></span></code></pre></div>
    </div>
</div>


Para carregar um arquivo de configuração personalizado a partir do seu diretório
de trabalho, monte o arquivo como um volume:

   <ul class="nav nav-tabs" id="tabs-2" role="tablist">
  <li class="nav-item">
      <button class="nav-link active"
          id="tabs-02-00-tab" data-bs-toggle="tab" data-bs-target="#tabs-02-00" role="tab"
          data-td-tp-persist="dockerhub" aria-controls="tabs-02-00" aria-selected="true">
        DockerHub
      </button>
    </li><li class="nav-item">
      <button class="nav-link"
          id="tabs-02-01-tab" data-bs-toggle="tab" data-bs-target="#tabs-02-01" role="tab"
          data-td-tp-persist="ghcr.io" aria-controls="tabs-02-01" aria-selected="false">
        ghcr.io
      </button>
    </li>
</ul>

<div class="tab-content" id="tabs-2-content">
    <div class="tab-body tab-pane fade show active"
        id="tabs-02-00" role="tabpanel" aria-labelled-by="tabs-02-00-tab" tabindex="2">
        <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sh" data-lang="sh"><span class="line"><span class="cl">docker run -v <span class="k">$(</span><span class="nb">pwd</span><span class="k">)</span>/config.yaml:/etc/otelcol/config.yaml otel/opentelemetry-collector:0.149.0
</span></span></code></pre></div>
    </div>
    <div class="tab-body tab-pane fade"
        id="tabs-02-01" role="tabpanel" aria-labelled-by="tabs-02-01-tab" tabindex="2">
        <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sh" data-lang="sh"><span class="line"><span class="cl">docker run -v <span class="k">$(</span><span class="nb">pwd</span><span class="k">)</span>/config.yaml:/etc/otelcol/config.yaml ghcr.io/open-telemetry/opentelemetry-collector-releases/opentelemetry-collector:0.149.0
</span></span></code></pre></div>
    </div>
</div>


## Docker Compose {#docker-compose}

Também é possível adicionar o OpenTelemetry Collector ao arquivo
`docker-compose.yaml` existente:

```yaml
otel-collector:
  image: otel/opentelemetry-collector
  volumes:
    - ./otel-collector-config.yaml:/etc/otelcol/config.yaml
  ports:
    - 1888:1888 # pprof extension
    - 8888:8888 # Prometheus metrics exposed by the Collector
    - 8889:8889 # Prometheus exporter metrics
    - 13133:13133 # health_check extension
    - 4317:4317 # OTLP gRPC receiver
    - 4318:4318 # OTLP http receiver
    - 55679:55679 # zpages extension
```

O arquivo `otel-collector-config.yaml` é necessário para o Collector iniciar.
Para mais informações, consulte a
[configuração do Collector](/docs/collector/configuration/).

Abaixo está uma configuração mínima do Collector que registra toda a telemetria
recebida.

```yaml
receivers:
  otlp:
    protocols:
      grpc:
        endpoint: 0.0.0.0:4317
      http:
        endpoint: 0.0.0.0:4318

exporters:
  debug:
    verbosity: detailed

service:
  pipelines:
    traces:
      receivers: [otlp]
      exporters: [debug]
    metrics:
      receivers: [otlp]
      exporters: [debug]
    logs:
      receivers: [otlp]
      exporters: [debug]
```
