Local development infrastructure: PostgreSQL, Redis, Adminer, pgAdmin, RabbitMQ (optional), VictoriaMetrics stack with vmagent (optional), Vector log collector (optional).
Managed via docker compose.
- Docker
- Make
cp .env.example .env
make up- PostgreSQL:
POSTGRES_PORT(default5432) - Redis:
REDIS_PORT(default6379)
- RabbitMQ (optional profile
mq):5672(AMQP),15672(UI)
- Adminer (optional profile
adminer):ADMINER_PORT(default8080) - pgAdmin (optional profile
pgadmin):8035(UI)
- MinIO (optional profile
storage):MINIO_PORT(default9000, S3 API),MINIO_CONSOLE_PORT(default9001, UI)
- VictoriaMetrics (optional profile
metrics):VICTORIA_METRICS_PORT(default8428, UI at/vmui) - vmagent (optional profile
metrics):VMAGENT_PORT(default8429, Prometheus scraper/forwarder for VictoriaMetrics) - VictoriaLogs (optional profile
metrics):VICTORIA_LOGS_PORT(default9428) - Grafana (optional profile
metrics):GRAFANA_PORT(default3000) - Vector (optional profile
metrics): collects Docker logs and sends them to VictoriaLogs - Metrics/logging endpoints are configurable via
.env:VMAGENT_REMOTE_WRITE_URL,VMAGENT_SCRAPE_JOB_NAME,VMAGENT_SCRAPE_PATH,VMAGENT_SCRAPE_TARGET,VECTOR_VICTORIA_LOGS_URI
make up # starts postgres + redis
make down
make restart
make resetmake up-adminer
make up-pgadmin
make up-mq
make up-minio
make up-metrics
make up-logs
make up-grafana
make up-vectormake up-metrics starts VictoriaMetrics, VictoriaLogs, vmagent, Vector, and Grafana.
vmagent scrapes a single target configured via .env:
VMAGENT_SCRAPE_JOB_NAME=app
VMAGENT_SCRAPE_PATH=/metrics
VMAGENT_SCRAPE_TARGET=host.docker.internal:8000Vector forwards Docker logs to VictoriaLogs. Its sink endpoint is configurable via:
VECTOR_VICTORIA_LOGS_URI=http://victoria_logs:9428/insert/jsonlinemake up-service-namemake wipe-postgres
make wipe-redis
make wipe-rabbitmq
make wipe-vm
make wipe-grafana
make wipe-service-namemake wipe-allmake psql