Analytics cookies only (Google Analytics, PostHog). No ad networks, no cross-site tracking. See our privacy policy.
Self-host VictoriaMetrics
updated Oct 2026deployed by usprices checked · Jul 2026Install verified on Ubuntu 26.04 · Oct 2026 · how we test
We earn commissions when you shop through the links below. Full disclosure →
A fast, resource-light time-series database for metrics: it speaks the Prometheus remote-write, scrape and query APIs plus InfluxDB, Graphite and OpenTSDB ingestion, extends PromQL as MetricsQL, and ships the vmui web UI for exploring data, so Grafana and Prometheus-style exporters plug straight in. Apache-2.0 licensed (an Enterprise edition with extra features is a separate licence), written in Go; the single-node version runs as one container writing to one data directory with no other services.
Runs on a VPS from $4/mo (Kamatera 1GB, 1 GB RAM) · prices checked Sep 2026
Our recommendation
Pick VictoriaMetrics when you want a metrics store that is cheaper to run than Prometheus and does not need a cluster to be reliable: one Go binary that accepts Prometheus remote-write and scrape targets plus the InfluxDB, Graphite and OpenTSDB protocols, answers the Prometheus querying API so Grafana works unchanged, extends PromQL as MetricsQL and ships the vmui query UI. It is Apache-2.0; the Enterprise build is a separate licence on separate image tags. Our snippet is the docs' Docker quick start as a compose file: one pinned image, a named volume for `-storageDataPath`, retention set to a year instead of the one-month default, and self-scraping on so vmui has something to show. Upstream publishes no RAM minimum, only capacity-planning guidance, so our 256 MB floor is an estimate for a handful of hosts. It does a different job from the catalog's other Monitoring entries: Uptime Kuma, Gatus, Checkmate, Kener and Healthchecks check whether things are up, Beszel and Glances show host stats and Zabbix is a full suite; VictoriaMetrics is the time-series database you point exporters and Grafana at, a drop-in for the catalog's Prometheus.
What you need
Any VPS with at least 256 MB of RAM
A domain you control — most self-hosted setups need HTTPS in front of them
Paid link — we earn a commission if you shop through it.
Install
Run these commands on your server:
# VictoriaMetrics — single-node time-series database with a Prometheus-compatible API and the vmui query UI — based on the Docker quick start in the VictoriaMetrics docs, pinned to v1.154.0cat > docker-compose.yml <<'EOF'services: victoriametrics: image: victoriametrics/victoria-metrics:v1.154.0 restart: unless-stopped command: - -storageDataPath=/victoria-metrics-data - -retentionPeriod=1y - -selfScrapeInterval=10s ports: - 8428:8428 volumes: - vm_data:/victoria-metrics-datavolumes: vm_data:EOFdocker compose up -d# → http://SERVER_IP:8428 — endpoint index; the query UI is /vmui, and there is no built-in login, so keep 8428 off the public internet or put vmauth or an authenticating reverse proxy in front
VictoriaMetrics's single-node docs are blunt about exposure, snapshots and retention:
non-negotiableThere is no login. The security section says every component must run on a protected private network, with untrusted requests going through an auth proxy such as vmauth; -httpAuth.username/-httpAuth.password add HTTP Basic auth to every endpoint, and -tls, -tlsCertFile and -tlsKeyFile switch 8428 to HTTPS. Our snippet publishes 8428 on all interfaces with none of that, so firewall it or add the flags before the box has a public address.
non-negotiableAll data is one directory, -storageDataPath (the vm_data volume here). Back it up through the /snapshot/create endpoint and copy the snapshot, not the live directory: the docs warn that snapshots are hard links and soft links that plain rm and cp mishandle. Upgrades are a pull of the new tag and a restart; upstream only patches the latest release and the LTS lines, so pin to one of those.
non-negotiable-retentionPeriod takes a number plus h, d, w, M or y (a bare number means months); the default is one month, the minimum one day, and disk usage can reach retention plus one month because partitions are dropped on the first day of a month. Extending retention on existing data is safe; shortening it eventually deletes data. The -scratch tags are the hardened distroless variants and the -enterprise tags need a licence.
non-negotiablePort 8428 carries ingestion, querying, vmui and admin endpoints alike, including /api/v1/admin/tsdb/delete_series and /snapshot/delete_all, so an authenticating proxy in front should allow-list the paths your clients need, which is how the docs recommend configuring vmauth. Set -http.header.hsts, -http.header.csp and -http.header.frameOptions once it is behind TLS, as the same section advises.