Deploy Prometheus + Grafana on Your VPS
Deploy Prometheus and Grafana on your VPS in one click. The standard monitoring stack, already wired together — metrics collected, dashboards drawn, alerts sent.
Prometheus scrapes metrics from your services on an interval and keeps them as time series; Grafana turns those into dashboards and fires the alerts. It is the pairing most teams end up on, and the reason is boring in the best way: your app exposes a /metrics endpoint, Prometheus collects it, and you can ask "what did latency look like at 3am on Tuesday" months later.
The two arrive connected. Grafana opens with Prometheus already set as its data source, so you can build a panel on the first visit instead of copying URLs between two services. Out of the box Prometheus watches itself, which is enough to prove the stack works; to monitor your own services, add them under scrape_configs in prometheus.yml — open the Prometheus service's Console tab to edit it, and the file persists across redeploys.
Prometheus has no login of its own and is deliberately kept off the public internet — metrics leak more than people expect, from hostnames to request paths to customer ids. Grafana, which does have logins, is the only way in.
What's included
- Prometheus + Grafana deployed together and already connected
- Grafana opens with the Prometheus data source configured — no copying URLs
- Prometheus kept internal; Grafana's login is the only public door
- prometheus.yml persists on a volume and is editable from the Console tab
- Metrics and dashboards on storage you own, queryable months later
Common use cases
- Seeing why the app was slow last night instead of guessing
- Dashboards and alerts for your own services on infrastructure you control
- Keeping operational metrics in-house rather than shipping them to a vendor
Frequently asked questions
How do I monitor my own services?
Expose a /metrics endpoint from your app (most frameworks have a Prometheus client library), then add it under scrape_configs in prometheus.yml. Open the Prometheus service's Console tab to edit the file — it lives on a volume, so your changes survive redeploys — then restart the service to pick the change up.
Why can I not open Prometheus directly?
Because it has no authentication at all, and its only option for adding some is a config file this template cannot generate for you. On a public URL anyone who found it could read every metric you collect. Grafana has logins, so it is the door — and it can query Prometheus over the private network.
Do I already have Grafana if I deployed it on its own?
The standalone Grafana template is still there and still fine — it just arrives with no data source, so you point it at something yourself. This template is the pair, pre-connected.
Ready to ship?
Deploy Prometheus + Grafana in under a minute.
Connect your VPS, pick this template, fill in any required fields. Vessl handles the container, SSL, and persistent storage.
Start for FreeNo credit card · BYOS · IDR billing
