Lawn Compose
Validation
How to validate compose files for correctness before shipping a template.
The built-in catalog is community-driven. Want to contribute an app? Open a PR on GitHub. You can also add custom catalogs from public Git repositories or local folders in Lawn Settings.
Compose files should be validated before shipping to catch syntax errors, missing variables, and misconfigured services.
Syntax check with Docker Compose
Since compose files follow the Compose Specification, you can validate syntax with:
docker compose -f lawn-compose/compose.yaml config
This checks that the file is valid YAML and conforms to the spec. Templates use standard ${VAR:-default} substitution, so no preprocessing is needed.
Manifest validation with lawn template validate
lawn template is not yet available in the current release. See the CLI reference for the planned commands.lawn template validate checks your manifest, compose files, and localization for Lawn-specific issues — missing fields, invalid icons, misconfigured health checks, dangling localization keys, and circular dependencies.
# Validate a specific template
lawn template validate path/to/my-app
# Validate the current directory
lawn template validate .
For full end-to-end testing (pulling images, starting containers, running health checks), see Testing.
Continue reading