Docker installation

Run MTL Explorer on your own host.

The standard Docker Compose setup starts the application, database, routing service, and location-search service with persistent local data directories.

Prerequisite

Install Docker Engine and the Docker Compose plugin on the host.

mkdir mtl-explorer
cd mtl-explorer
curl -fsSL -o docker-compose.yml \
  https://raw.githubusercontent.com/mindalyze-com/mtl-explorer/main/docker-compose.yml
docker compose up -d

Complete the initial setup.

The server normally takes 10–15 seconds to initialize the database on the first start.

Open the web interface

Visit http://localhost:18080/mtl/ from the host, or replace localhost with the server name when accessing it over the local network.

Sign in

The initial username is mtl and the initial password is change-me.

Change the login

Set a private username and password before making the service reachable outside the host.

Import tracks

Place GPX and FIT files in the mounted ./data/gpx/ directory. The server processes new files in the background.

Do not expose the default login. The default credentials are intended only for the first local start. Review the reverse-proxy and login settings before external access is enabled.

Data stays in mounted directories.

The Compose file creates local directories for the database, imported tracks, photographs, and other service data. Back up these directories together.

Track files

Imported activity files remain available on the host alongside the processed database records.

Database

The PostgreSQL data directory contains the indexed archive, settings, filters, segments, and planned routes.

Optional local maps

A local vector-map sidecar can be enabled when map data should also stay on the host.

Updates

Review the release notes, pull the current images, and restart the Compose project when updating.

Continue with the full documentation.

The repository documentation covers custom logins, directories, maps, updates, logs, and reverse-proxy configuration.