Piyush Dankhra

moon indicating dark mode
sun indicating light mode

Last updated: May 30, 2024

What is Reward - A Better CLI Tool to Create Dev Environment

Introduction

Reward is a versatile CLI utility designed to orchestrate Docker-based development environments, allowing developers to run multiple local environments simultaneously without port conflicts. This tool is particularly beneficial for setting up Magento 2 environments quickly and efficiently.

Key Features

  1. Traefik Integration: Provides SSL termination and routes requests to the appropriate containers.
  2. Portainer: Offers visibility into running Docker containers.
  3. Dnsmasq: Eliminates manual /etc/hosts editing by serving DNS responses for *.test domains.
  4. SSH Tunnel: Enables connections from tools like Sequel Pro or TablePlus to multiple running database containers.
  5. Wildcard SSL Certificates: Issues SSL certificates for all local development domains.
  6. Database Management: Includes PHPMyAdmin or Adminer for database management.
  7. Elasticsearch Management: Provides ElasticHQ for managing Elasticsearch clusters.
  8. Magento Support: Fully supports Magento 1, Magento 2, PWA Studio, and other platforms across major operating systems.

Magento 2 Environment Setup

Reward simplifies the setup of Magento 2 environments with its efficient configuration capabilities:

Initialization

Initializing a Magento 2 environment is straightforward. The .env file allows extensive customization, including:

  • Composer Version Management: Configure the Composer version as needed.
  • PHP Environment Variables: Set PHP environment variables to suit your project requirements.
  • Nginx Configuration: Customize Nginx settings for your development environment.
  • Access to Services: Utilize services like PHPMyAdmin and Mailbox to manage databases and test emails.

For detailed steps on initializing a Magento 2 environment, refer to the Reward documentation.

Customization Options

Reward offers extensive customization options to tailor your development environment:

  • Composer Configuration: Handle Composer versions efficiently. More details
  • PHP Settings: Manage PHP environment variables. More details
  • Nginx Configuration: Customize Nginx settings. More details
  • Access Services: Use services like PHPMyAdmin and Mailbox. More details

Additional Capabilities

  • Database Management: Export and import databases, and access server logs. More details
  • Xdebug Support: Configure and utilize Xdebug for debugging. More details

Conclusion

Reward is a powerful tool for developers looking to streamline their development environment setup. Its robust features and extensive customization options make it an ideal choice for managing Magento 2 environments and beyond. For more detailed information, visit the Reward documentation.


I'm Piyush Dankhra
Adobe Certified Expert - Adobe Commerce Developer / Front-End Developer / Business Practitioner
Adobe Subject Matter Expert - Adobe Commerce Front End Developer / Business Practitioner
Working on Magento 2 / Hyva