Installing Magento 2 For Local Development


Details
Before we can learn Magento 2, we have to install it. In this meet up i want to go over the simplest way to install Magento 2 on a local machine (as a caveat, i will be working on OSX, the concepts will all be the same, but a windows or linux machine may run into different issues along the way). We will looking at 3 systems for setting up a local site: MAMP (https://www.mamp.info/en/), Virtual Box (https://www.virtualbox.org/wiki/VirtualBox) and Docker with Magento's Dev Box (http://devdocs.magento.com/guides/v2.1/install-gde/docker/docker-over.html).
I will be focus mainly on MAMP as it's the fastest way to go through the install process, but will also take a quick run through setting up Virtual Box and Dev Box. All these systems could take up months of meetups each, and our goal it not to fully explore any one of these tool, but give a quick introduction to each so you can pick the right one for you and start coding.
For the meetup, if you would like to follow along, i would recommend having these tools installed on you machine and configured enough to be able to get rolling fast. Also you will want to have downloaded the latest Magento 2 release. You can choose to have sample data for the install (installing with sample data can raise some interesting issues that we will cover in the talk) but that download will take longer to install. So for playing around, sometimes it's easier to just have a quick install to save time.
- About MAMP - Using MAMP, you can run a server from your local machine. It takes care of the configurations for PHP, Apache and MySQL and provides a simple and easy to use interface for settings and start/stop of the server. It's free, easy to install and dead simple to use. In the world of developing locally, it's the most straight forward. With that simplicity, it lacks a lot of the feature that help to make your local development environment match a production server. Because of this, there is no way to fully test development code to know that it will work 100% of the time.
-About Virtual Box - Virtual Box is an application that creates a virtual machine on your host machine. This give you the power to create a total replica of a production server (live site) locally so you know that everything is set up correctly during development and will work when you go live. You can run as many machines as your host has room for and can switch between environment quickly. Because of this power, the setup and configurations of this system is complex and can be hard to understand for people that have not had a lot of experience setting up servers.
-About Dev Box - Dev Box is the official (but still in beta) Magento Dev Environment. It was created at Magento to create an easy way for developers to set up a local machine and get rocking on great new Magento sites. It sits on Docker, which uses a concept of containers to create virtual machines to develop code in. Similar to Virtual Box, Docker is very complex and sophisticated tool that can be used a 100 different ways. Because of that, it can be hard to understand, even though Magento has provided a simple process for setting up the right machine for use with Magento 2.
--Venue Info--
Fluid Coffee Bar has a meeting room in the back that we will be taking over. It's located on the corner of 19th and Pennsylvania. There is access into the space in the back of the shop, but it's you are coming late, there are doors on the outside of the space for direct access to the meeting room, you don't have to go through the coffee shop. Parking is all street parking, and in this area is a roll of the dice, but should be easy enough to find.

Installing Magento 2 For Local Development