Minimum
- 1 CPU core
- 512 MB RAM
- 512 MB disk space
- Suitable for small teams (under 50 entities)
Legend is designed to run with minimal resources. Before installing, verify that your system meets these requirements.
Minimum
Recommended
Large Deployments
Disk space requirements grow with your data. Each entity (landmark, person, or team) consumes approximately 1-5 KB of disk space for its YAML file and associated documentation. The SQLite database grows with user accounts, audit logs, and configuration.
For most organizations, the recommended configuration provides comfortable headroom. Large deployments with thousands of entities or extensive documentation benefit from additional resources.
Legend runs as a Docker container. You need:
To check your Docker version:
docker --versiondocker compose versionIf Docker is not installed, the install script handles installation automatically on Linux systems. For macOS and Windows, install Docker Desktop from the official website.
Legend supports any operating system that can run Docker:
The install script is optimized for Linux and supports the following package managers:
For macOS and Windows, use Docker Desktop with the Docker Compose or Docker Run installation methods.
Users accessing Legend need a modern web browser:
Legend uses modern web standards and requires JavaScript to be enabled. Mobile browsers on iOS and Android are supported.
Legend listens on a single port for HTTP traffic:
Ensure the port you choose is not already in use by another service. The install script checks for port conflicts and prompts you to choose a different port if needed.
Legend requires outbound internet access for license validation:
https://mylegend.io (configurable via LEGEND_LICENSE_SERVER_URL)Users access Legend through their web browsers. Ensure your firewall or network security group allows inbound traffic on the port Legend listens on (default 3000).
For production deployments behind a reverse proxy (nginx, Apache, Caddy), configure the proxy to forward traffic to Legend’s port. Legend does not handle TLS termination. Place it behind a reverse proxy that manages HTTPS certificates.
Legend stores data in two locations:
The YAML catalog contains entity definitions, documentation files, and branding assets. This data is:
The SQLite database contains user accounts, groups, configuration, audit logs, and license information. This data is:
legend.db)By default, both the YAML catalog and SQLite database are stored in the same directory (/app/data inside the container, mapped to your host’s data directory). For better performance in large deployments, you can separate them:
See the Installation guide for configuration details.
When running Legend in Docker, consider setting resource limits to prevent unexpected consumption:
services: legend: image: legendapp/legend:latest deploy: resources: limits: cpus: '2' memory: 2G reservations: cpus: '1' memory: 512MResource limits are optional but recommended for production deployments. They prevent Legend from consuming more resources than expected during peak usage or if a bug causes resource leaks.
Before installing Legend, verify:
LEGEND_SESSION_SECRET (generate with openssl rand -hex 32)If all items are checked, you are ready to install. See the Installation guide to proceed.
If docker or docker compose commands are not found:
docker group: sudo usermod -aG docker $USER, then log out and back in.If the installation fails because port 3000 is in use:
sudo lsof -i :3000 to identify it, then stop or reconfigure that serviceIf you receive disk space errors:
docker system pruneIf license validation fails:
mylegend.io