I'm trying to setup a server for Magento 2.
I'm following through the official documentation, but it's patchy at best. For example, as of writing there is no direct method of installing PHP7.02 on Centos other than following their non officially recommended method of using the IUS repository.
Is there a recommended server setup for Magento 2 that we could follow along and easily spin up servers?
The answer I'm looking for would include
- Which OS is better (CentOS, Ubuntu, Debian)
- Which web server is better (Apache 2.2 or 2.4, nginx 1.8 or later)
- Which Database is better (MySQL 5.6, MariaDB or Percona)
- What PHP version (5.5, 5.6, 7.02, 7.06)
- PHP libraries (would include the ones listed by Magento)
- Additional PHP components and settings, like PHP OPcache and
- Mail server (Magento mentions MTA or an SMTP server)
- Anything else like Redis, Varnish, Memcached etc
Ideally, once I figure out all of the above, I can then write a bash script to easily spin up Magento2 instances.
I am not looking for an out of the box one line command to install Magento2, rather I'm looking for a recommended stack starting with the OS and down.