RunReveal
SourcesRevealdDeployment

Docker deployment

Run reveald as a container for isolated, reproducible deployments.

Docker

docker run -d \
  --name reveald \
  --restart unless-stopped \
  -v /path/to/config.json:/config.json:ro \
  -v /var/log:/logs:ro \
  -e WEBHOOK_URL="https://api.runreveal.com/sources/reveald/webhook/..." \
  runreveal/reveald:latest \
  run --config /config.json

Mount log directories as read-only volumes and pass secrets via environment variables.

Docker Compose

services:
  reveald:
    image: runreveal/reveald:latest
    container_name: reveald
    restart: unless-stopped
    volumes:
      - ./config.json:/config.json:ro
      - /var/log:/logs:ro
    environment:
      - WEBHOOK_URL=${WEBHOOK_URL}
    command: run --config /config.json
    logging:
      driver: "json-file"
      options:
        max-size: "10m"
        max-file: "3"

When collecting logs from the host filesystem inside a container, make sure the log directories are bind-mounted into the container. The container must have read access to the mounted paths.

Example: Collect host logs and journald

To access journald from inside a container, mount the journal directory:

services:
  reveald:
    image: runreveal/reveald:latest
    restart: unless-stopped
    volumes:
      - ./config.json:/config.json:ro
      - /var/log/journal:/var/log/journal:ro
      - /run/log/journal:/run/log/journal:ro
      - /var/log:/var/log:ro
    environment:
      - WEBHOOK_URL=${WEBHOOK_URL}
    command: run --config /config.json

Pinning versions

Use a specific version tag instead of latest for reproducible deployments:

image: runreveal/reveald:v0.1.5

Check GitHub Releases for available versions.

On this page