Skip to content

Run a VersaTiles Server Locally with Docker

This short guide shows how to launch a VersaTiles server on your machine in just a few commands.

TIP

To expose the server on a public domain, see Deploy a VersaTiles server with Nginx.

Prerequisites

Before you begin, make sure you have docker properly installed.


Option A — Minimal image: versatiles

The image versatiles contains only the VersaTiles Rust server. Choose it if you already have your own front‑end or want finer control.

bash
docker run --rm -it \
  -p 8080:8080 \
  --mount type=bind,src="$(pwd)",dst=/data,readonly \
  versatiles/versatiles:latest \
  serve \
  -s /data/frontend-dev.br.tar \
  '/data/osm.versatiles'

Open http://localhost:8080/ in your browser to confirm the server is running.

See the full image documentation in the versatiles directory of the versatiles-docker repo.


Option B — Bundled front‑end image: versatiles-frontend

The image versatiles-frontend packages the VersaTiles server together with the latest developer front‑end. This is the quickest way to spin up a local map viewer.

bash
docker run --rm -it \
  -p 8080:8080 \
  --mount type=bind,src="$(pwd)",dst=/tiles,readonly \
  versatiles/versatiles-frontend:latest-alpine \
  -s frontend-dev.br.tar \
  '/tiles/osm.versatiles'

Then browse to http://localhost:8080/.

See the image documentation in the versatiles-frontend directory of the versatiles-docker repo.


Resources

Released under Unlicense