Type to search.

Quickstart for Docker on self-managed deployments

Serverless Observability

Elastic Cloud Serverless projects are autoscaled environments, fully managed by Elastic and available on Elastic Cloud.

Availability

  • Generally available

    This functionality is generally available and ready for production usage.

Stack

The Elastic Stack includes Elastic's core products such as Elasticsearch, Kibana, Logstash, and Beats.

Availability

  • Generally available

    This functionality is generally available and ready for production usage.

Unless stated otherwise on the page, this functionality is available when your Elastic Stack is deployed on Elastic Cloud Hosted, Elastic Cloud Enterprise, Elastic Cloud on Kubernetes, and self-managed environments.

This documentation corresponds to the latest patch available for each minor version. If you're not using the latest patch, check the release notes for changes.

Elastic Agent

Elastic Agent can run in OpenTelemetry mode to retrieve traces, metrics, and logs from your infrastructure and applications, and forward them to Elastic Observability.

Availability

  • Generally available

    This functionality is generally available and ready for production usage.

This documentation corresponds to the latest patch available for each minor version. If you're not using the latest patch, check the release notes for changes.

Learn how to set up the Elastic Agent and EDOT SDKs in a Docker environment to collect host metrics, logs and application traces.

The fastest way to get started is the Add data screen in Elastic Observability. It generates install commands with your endpoint and API key already included.

  1. Open Elastic Observability.
  2. Go to Add data.
  3. Select what you want to monitor.
  4. Follow the instructions.

Follow these steps to deploy the Elastic Agent and EDOT SDKs in Docker.

  1. Create the config file

    Create the otel-collector-config.yml file with your Elastic Agent configuration. Refer to the configuration reference.

  2. Retrieve your settings

    Retrieve your Elasticsearch endpoint and API key.

  3. Create the .env file

    Create an .env file with the following content. Replace the placeholder values with your Elastic Cloud credentials:

    Shell
    HOST_FILESYSTEM=/
    DOCKER_SOCK=/var/run/docker.sock
    ELASTIC_AGENT_OTEL=true
    COLLECTOR_CONTRIB_IMAGE=elastic/elastic-agent:9.5.6
    ELASTIC_API_KEY=<your_api_key_here>
    ELASTIC_ENDPOINT=<your_endpoint_here>
    OTEL_COLLECTOR_CONFIG=/path/to/otel-collector-config.yml
    
  4. Create the compose file

    Create a compose.yml file with the following content:

    YAML
    services:
      otel-collector:
        image: ${COLLECTOR_CONTRIB_IMAGE}
        container_name: otel-collector
        deploy:
          resources:
            limits:
              memory: 1.5G
        restart: unless-stopped
        command: ["--config", "/etc/otelcol-config.yml" ]
        network_mode: host
        user: 0:0
        volumes:
          - ${HOST_FILESYSTEM}:/hostfs:ro
          - ${DOCKER_SOCK}:/var/run/docker.sock:ro
          - ${OTEL_COLLECTOR_CONFIG}:/etc/otelcol-config.yml
        environment:
          - HOST_FILESYSTEM
          - ELASTIC_AGENT_OTEL
          - ELASTIC_API_KEY
          - ELASTIC_ENDPOINT
          - STORAGE_DIR=/usr/share/elastic-agent
    
  5. Start the Collector

    Start the Collector by running the following command:

    Shell
    docker compose up -d
    
  6. (Optional) Instrument your applications

    To collect telemetry from applications and use the Elastic Agent as a gateway, instrument your target applications following the setup instructions:

    Configure your SDKs to send the data to the local Elastic Agent using OTLP/gRPC (http://localhost:4317) or OTLP/HTTP (http://localhost:4318).

  7. Install the content packs

    Install the System OpenTelemetry Assets integration and the Docker OpenTelemetry Assets integration in Kibana.

  8. Explore your data

    Go to Kibana and select Dashboards to explore your newly collected data.

Having issues with Elastic OpenTelemetry? Refer to the Troubleshooting common issues with the Elastic Agent and Troubleshooting the EDOT SDKs for help.