We are proud to release our newest product MGT Development Environment. We got asked from many companies if we could provide an image with all components to develop locally.
Luckily this year docker for Mac was released which isn’t more then a game changer because it was to much effort to run it together with VirtualBox and other tools.
With our free MGT Development Environment we want to give our customers and the great magento community a local development environment which is running in less than under 2 minutes.
What is MGT Development Environment?
MGT Development Environment is a local development environment for Magento 1 and Magento 2 based on Docker. Docker runs on Mac, Windows and Linux which means you can run the environment where docker runs.
It’s free and easy to use and contains components like PHP, NGINX, MySQL, Redis, Memcache, Varnish, Postfix and a control panel for administration.
The following video demonstrates how fast you can setup a local development environment.
What are the advantages of MGT Development Environment?
For us it was important to provide a solution which runs on Mac, Linux and Windows.
With Docker under the hood you can now run the image on your favorite operating system.
I am personally working with Mac because it’s very fast, stable and a pleasure to work with.
You need other packages? No problem, just install them with apt-get install $yourPackage .
Clean host system
Working with different versions of PHP, NGINX and other software on Mac could cause a mess on your host system especially when you have to compile them.
With docker you can just run and throw away the containers when they are not needed anymore.
You can extend the docker image to your needs and store it in a remote repository to share it with others.
You can track successive versions of a container, inspect differences, or roll-back to previous versions.
Containers reuse components from the preceding layers, which makes them noticeably lightweight.
Lightweight footprint and minimal overhead
Docker is very lightweight and comes with a minimal overhead in comparison with solutions like VirtualBox or VmWare Fusion.
The biggest challenges were to make the Magento development fast and easy to use. For Magento it’s essential to work with a debugger like Xdebug.
The problem is that your IDE like PhpStorm are not running inside of the container which means you need to share the files from your host system with your container.
With Linux you don’t have that problem because you can use Docker’s shared volumes without any negative performance aspects. With Mac and Windows it’s also possible to share a host directory
but the performance is very bad.
We solved the performance issue with Unison which is a two way file synchronization solution.
Unison is very stable and works for Mac and Windows. For Magento, especially Magento 2 we need to have a two way file synchronization because it’s generates and writes a lot of files.
The initial setup of unison takes less then 10 minutes and is well documented in our Documentation
Do i still need XAMP or MAMP?
The MGT Development Environment replaces XAMPP, MAMPP or any other software solution entirely.
These solutions were great and we say thank you to them but it’s now time for the future.
Nowadays you need to be fast and you can’t wait many months that MAMPP or XAMPP releases a new versions of PHP, NGINX and MySQL.