Back to Dashboard

vector

0.58.0-alpine

Trust posture

πŸ“‹ SBOM ATTESTEDπŸ›‘ TRIVY: 2 HIGH (advisory) Β· SCANNED 2026-08-29πŸ— AMD64 + ARM64πŸ” REPRODUCE THESE CHECKS LOCALLY
PULLS 6.8K 4032 to 6854 pulls across 30 recorded days 2026-08-02: 4032 pulls2026-08-03: 4036 pulls2026-08-04: 4064 pulls2026-08-05: 4066 pulls2026-08-06: 4212 pulls2026-08-07: 4212 pulls2026-08-08: 4230 pulls2026-08-09: 4252 pulls2026-08-10: 4265 pulls2026-08-11: 4289 pulls2026-08-12: 4321 pulls2026-08-13: 4473 pulls2026-08-14: 4501 pulls2026-08-15: 4580 pulls2026-08-16: 4602 pulls2026-08-17: 4705 pulls2026-08-18: 4734 pulls2026-08-19: 4927 pulls2026-08-20: 4993 pulls2026-08-21: 5189 pulls2026-08-22: 5506 pulls2026-08-23: 5569 pulls2026-08-24: 5599 pulls2026-08-25: 5607 pulls2026-08-26: 5784 pulls2026-08-27: 5843 pulls2026-08-28: 6150 pulls2026-08-30: 6764 pulls2026-08-31: 6854 pulls2026-09-01: 6854 pulls
STARS 0

VERIFIABLE TRUST ARTIFACTS

Provenance

Build commit
8a8b07b
Build digest
sha256:87752f8c5cf0758edf3e5adb5bd52fc09305b96ae66f84d359860d5e91e9cb45
Index digest
sha256:f9a4de6e76bd81cda636b7728d138c92cd5be953af7df9b2a4cb1465eff4ad26
Manifest digest (amd64)
sha256:9e327f01fcb58f7eb4e5ca0a12e791f3f9af8897ccba8ca87a598b6a49b15c10
Manifest digest (arm64)
sha256:6730cdef32b37df3e1821efe6446f12f55653e063d449d799eb690112512a408
SBOM attestation
43789029…
Trivy last scan
2026-08-29 00:48 UTC
Base image
Verify
gh attestation verify oci://ghcr.io/oorabona/vector:0.58.0-alpine --owner oorabona guide β†’

Security scan results

Trivy Β· last scan 2026-08-29

Last scan: (advisory mode β€” Trivy runs continue-on-error in CI; we surface findings, we do not block builds on them).

0Critical
2High
6Medium
12Low
0Info

Top advisories (upstream, advisory)

    β†’ Full report via gh api β€” see Verify Images.

    Explore

    Build lineagesha256:
    Build Lineage
    Build Digest sha256:87752f8c5cf0758edf3e5adb5bd52fc09305b96ae66f84d359860d5e91e9cb45
    Base Image
    OS_IMAGE_TAG latest
    Package summary n/a β€” runtime parsed
    Recent changes n/a β€” runtime parsed
    Build history n/a β€” runtime fetched

    Documentation

    README

    Vector

    Docker Hub GHCR Build

    High-performance observability data pipeline for collecting, transforming, and routing logs, metrics, and events. Built on Vector with a pre-built musl static binary on Alpine Linux.

    Why this image

    This image packages Vector as a minimal, production-hardened container suited for vendor-free observability pipelines.

    • Minimal attack surface. Built on Alpine Linux using the upstream musl-linked static Vector binary from GitHub Releases. The binary is self-contained β€” it does not depend on glibc or a shell interpreter at runtime, even though Alpine still ships ash for image-level operations.
    • Multiple architectures. Published for both linux/amd64 and linux/arm64, tested on each arch in CI. Pulls the correct platform layer automatically on docker pull.
    • Verifiable provenance. Every build produces a Sigstore SBOM attestation (cosign) and a Trivy vulnerability scan. Digests are recorded in build lineage and surfaced on the dashboard.
    • Automated upstream tracking. The upstream-monitor workflow checks the Vector GitHub release feed daily and opens a PR when a new version is available, keeping the image current without manual intervention.
    • Common sink/source coverage. Supports Docker log collection, syslog, file tailing, Prometheus scrape, and OpenTelemetry out of the box. Pairs directly with the oorabona/postgres:<version>-full-alpine flavor (TimescaleDB + ParadeDB) for a complete vendor-free log/metrics store β€” see the PostgreSQL sink example below.

    Verify this image

    Every build ships a Sigstore-signed SBOM and a full Trivy scan β€” verify them yourself, no login required:

    gh attestation verify oci://ghcr.io/oorabona/vector:latest --owner oorabona
    

    Full walkthrough (SBOM payload, Trivy findings, multi-arch manifest inspection, upstream dependency tracking) β†’ https://oorabona.github.io/docker-containers/verify-images/

    Quick Start

    # Pull the image
    docker pull ghcr.io/oorabona/vector:latest
    
    # Run with default demo config (generates sample logs β†’ console)
    docker run -d --name vector -p 8686:8686 ghcr.io/oorabona/vector:latest
    
    # Run with custom config
    docker run -d --name vector \
      -v /path/to/vector.yaml:/etc/vector/vector.yaml:ro \
      -p 8686:8686 \
      ghcr.io/oorabona/vector:latest
    
    # Monitor pipeline performance
    docker exec vector vector top
    

    Build

    # Build with latest upstream version
    ./make build vector
    
    # Build with specific version
    ./make build vector 0.53.0
    

    Build Args

    Arg Default Description
    VERSION latest Full version tag (set by build system)
    UPSTREAM_VERSION (auto) Raw upstream version (e.g., 0.53.0)
    OS_IMAGE_BASE alpine Base image distribution
    OS_IMAGE_TAG latest Base image tag

    Configuration

    Vector uses a YAML configuration file at /etc/vector/vector.yaml. The default config runs a demo pipeline that generates sample JSON logs and prints them to the console.

    For production, mount your own configuration:

    # vector.yaml β€” collect Docker logs, enrich, send to PostgreSQL
    api:
      enabled: true
      address: "0.0.0.0:8686"
    
    sources:
      docker_logs:
        type: docker_logs
    
    transforms:
      enrich:
        type: remap
        inputs: ["docker_logs"]
        source: |
          # Parse structured fields and add metadata
          .host = get_hostname!()
          .environment = get_env_var("VECTOR_ENV") ?? "production"
          .processed_at = now()
    
    sinks:
      postgresql:
        type: postgres
        inputs: ["enrich"]
        endpoint: "postgresql://vector:password@postgres:5432/observability"
        table: "logs"
        encoding:
          codec: json
    

    PostgreSQL Sink (Vendor-Free Observability)

    Vector pairs with our postgres:full image (TimescaleDB + pgvector + ParadeDB + Citus) for a complete vendor-free observability stack:

    • Logs β†’ PostgreSQL with TimescaleDB hypertables for time-series queries
    • Metrics β†’ PostgreSQL with continuous aggregates for efficient rollups
    • Search β†’ ParadeDB BM25 index for full-text search over logs

    See examples/docker-compose.yaml for a ready-to-run stack.

    Ports

    Port Service
    8686 Vector API (health checks, vector top, GraphQL playground)

    Additional ports depend on your configured sources (e.g., 514 for syslog, 9000 for Prometheus scrape, 4317 for OpenTelemetry).

    Volumes

    Path Purpose
    /etc/vector/vector.yaml Configuration file (mount read-only)
    /var/lib/vector/ Buffer data directory (for disk buffers)

    Health Check

    Built-in health check via Vector API:

    GET http://localhost:8686/health β†’ {"ok": true}
    

    Management

    # Reload configuration without restart (graceful)
    docker kill --signal=HUP vector
    
    # View real-time pipeline metrics
    docker exec vector vector top
    
    # Validate configuration before deploying
    docker exec vector vector validate /etc/vector/vector.yaml
    
    # View logs
    docker logs -f vector
    

    Architecture

    Sources (inputs)          Transforms (VRL)            Sinks (outputs)
    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”          β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”        β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
    β”‚ docker_logs  │───┐      β”‚ remap (enrich)   │───┐    β”‚ PostgreSQL   β”‚
    β”‚ syslog       │─────────>β”‚ filter (route)   │───────>β”‚ S3 / GCS     β”‚
    β”‚ file         │────      β”‚ aggregate        │────    β”‚ Elasticsearchβ”‚
    β”‚ prometheus   β”‚β”€β”€β”€β”˜      β”‚ dedupe           β”‚β”€β”€β”€β”˜    β”‚ console      β”‚
    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜          β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜        β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
    

    Runs as non-root user vector (uid 1000). Pre-built musl-linked static binary downloaded from GitHub releases β€” supports x86_64 and aarch64.

    Security Considerations

    • Runs as non-root user vector (uid 1000)
    • No shell access required β€” single static binary
    • Mount config read-only (:ro)
    • Use environment variables or secrets for sink credentials
    • Buffer data at /var/lib/vector/ β€” mount a volume for persistence and to avoid data loss on restart
    • TLS supported for all network sources and sinks

    Dependencies

    Component Version Source Monitoring
    Vector 0.53.0 GitHub upstream-monitor
    Alpine Linux latest Base image upstream