Skip to content

Quick Start ​

After lerd install, two commands cover every project type:

bash
# Park a directory, every PHP project inside gets a .test domain automatically
lerd park ~/Lerd

# Confirm DNS, nginx, services, and certs are healthy
lerd status

  1. lerd park registers the directory with the watcher service. Every subdirectory that looks like a PHP project gets a .test domain, no /etc/hosts edits, DNS is handled by lerd-dns, a small DNS server built into lerd.
  2. lerd status shows a health summary: DNS, nginx, PHP-FPM containers, services, and cert expiry.

If you only want to register a single project, cd into it and run lerd link instead of lerd park.


Pick your framework ​

The next steps depend on what you're building. Each walkthrough is end-to-end, from an empty directory to an HTTPS site with a database, dependencies installed, and workers running:

  • Laravel: built-in framework, queue + scheduler + Reverb workers
  • Symfony: Doctrine migrations, Messenger worker, MySQL or Postgres
  • WordPress: wp-config.php wired up from the store definition, MySQL
  • Containers: Node, Python, Go, Ruby, or any runtime via a per-project Containerfile.lerd

Already cloning an existing repo with a committed .lerd.yaml? cd in and run lerd setup; it reads the config and runs every install/migrate/build step automatically. See Project Setup.


Non-PHP projects ​

Lerd isn't just for PHP. Drop a Containerfile.lerd at the root of any project, run lerd init, and Lerd builds the image, runs the container, and reverse-proxies nginx to it with HTTPS, services, and workers exactly like a PHP site.

dockerfile
# Containerfile.lerd
FROM node:20-alpine
RUN npm install -g nodemon
CMD ["npm", "run", "start:dev"]
bash
cd ~/projects/nestapp
lerd init      # wizard asks for port, containerfile, HTTPS, services
lerd link      # builds image, starts container, wires up nginx

See the Containers walkthrough for Node, Python, Go, and Ruby end-to-end examples, and the Custom Containers reference for every configuration knob.


Add extra services ​

Lerd ships with MySQL, PostgreSQL, Redis, Meilisearch, RustFS, and Mailpit built in. Need anything else? The Services walkthrough has copy-paste recipes for the most common ones:

  • MongoDB: document store with per-site database auto-provisioning
  • phpMyAdmin / pgAdmin / Adminer: web UIs for MySQL and PostgreSQL
  • Elasticsearch: full-text search
  • RabbitMQ: message broker with management UI

Each recipe is a single YAML file plus lerd service add and lerd service start, that's it.


Web UI ​

The dashboard is available at http://127.0.0.1:7073 once Lerd is installed. It gives you a visual overview of all your sites, services, and system health.

See Web UI for details.

Released under the MIT License.