Welcome to Reward’s documentation!

Reward is a Swiss Army knife CLI utility for orchestrating Docker based development environments. It makes possible to run multiple local environments simultaneously without port conflicts by utilizing common services proxying requests to the correct environment’s containers.

Reward is written in Go, and it supports Linux, macOS and Windows (and WSL2).


  • Traefik for SSL termination and routing/proxying requests into the correct containers.

  • Portainer for quick visibility into what’s running inside the local Docker host.

  • Dnsmasq to serve DNS responses for *.test domains eliminating manual editing of /etc/hosts

  • An SSH tunnel for connecting from Sequel Pro or TablePlus into any one of multiple running database containers.

  • Reward issued wildcard SSL certificates for running https on all local development domains.

  • A common PHPMyAdmin (or optionally Adminer) container for database management.

  • An ElasticHQ container for the ability to manage the Elasticsearch Clusters.

  • Full support for Magento 1, Magento 2, PWA Studio, Laravel, Symfony 4, Shopware 6, WordPress and more on all major

    operating systems

  • Ability to override, extend, or setup completely custom environment definitions on a per-project basis.


Under the hood docker-compose is used to control everything which Reward runs (shared services as well as per-project containers) via the Docker Engine.

Join the Community

Do you have a question? Feel free to ask it! Join Reward’s Slack community today!

Join Slack

Author Information

This project was started in 2021 by Janos Miko.

Like my work?

Buy me a coffee! ☕

Patreon PayPal


Reward was inspired by Warden and most of its functionalities are reused/rewritten in Reward, so HUGE thanks to David Alger and all the contributors for creating it.