Docker
Quick start
git clone https://github.com/infrasigns/infrasigns
cd infrasigns
cp config/config.yaml config/local.yaml
# edit config/local.yaml
docker compose up -d
The bundled docker-compose.yml starts three services:
| Service | Image | Port |
|---|---|---|
| infrasigns | built from Dockerfile |
— |
| prometheus | prom/prometheus:v3.4.0 |
9090 |
| node-exporter | prom/node-exporter:v1.9.1 |
9100 |
Using your own Prometheus
If you already have Prometheus running, point InfraSigns at it and skip the bundled one:
Then start only InfraSigns:
docker run -v $(pwd)/config/local.yaml:/etc/infrasigns/config.yaml \
ghcr.io/infrasigns/infrasigns:latest
Config volume
The container reads config from /etc/infrasigns/config.yaml. Mount your config file:
# docker-compose.yml override
services:
infrasigns:
volumes:
- ./config/local.yaml:/etc/infrasigns/config.yaml:ro
Building locally
The image uses a multi-stage build:
- Stage 1 (
golang:1.26-alpine) — compiles the binary with-ldflags="-s -w" -trimpath - Stage 2 (
gcr.io/distroless/static-debian12) — minimal runtime, no shell