Après le passage de la certification Magento 1 il est temps pour moi de creuser un peu plus intensément Magento 2.

Pour commencer voici donc un petit script bien utile qui va installer Magento 2 ainsi que tout ses prérequis ( nginx / php-fpm ) sur une Vm Ubuntu 16.04 brute
Dans mon cas celle-ci est hébergée dans AWS.

Voici le script complet

 #!/bin/bash
 
#Mise à jour du serveur
sudo apt-get update && sudo apt-get -y upgrade
 
#Installation des libs nécessaires au serveur
sudo apt-get -y install nginx git unzip htop php-fpm php-mysql php7.0-curl php7.0-mcrypt php7.0-xsl php7.0-intl php7.0-gd php7.0-mbstring php7.0-zip
 
#Installation de mysql
sudo debconf-set-selections <<< "mysql-server mysql-server/root_password password root"
sudo debconf-set-selections <<< "mysql-server mysql-server/root_password_again password root"
sudo apt-get install -y mysql-server
 
#Récupération de magento2
cd /var/www/html/
sudo mkdir magento2
sudo chown -R ubuntu:www-data magento2
cd magento2
echo "Recupération et extraction de l'archive"
#@Todo : Trouver un miroir avec les versions de magento2
sudo wget http://web.h-hennes.fr/magento2/Magento-CE-2.1.5_sample_data.zip
sudo unzip Magento-CE-2.1.5_sample_data.zip
 
#Mise à jour des droits
echo "Mise à jour des droits des fichiers"
sudo find . -type f -exec chmod 664 {} \;
sudo find . -type d -exec chmod 775 {} \;
sudo chown -R ubuntu:www-data .
 
#Ajout de l'user ubuntu au group www-data
sudo usermod -a -G www-data ubuntu
 
#creation de la base de données
mysql -u root -proot -e "CREATE DATABASE magento2"
 
#Installation de magento via la ligne de commande
php bin/magento setup:install --base-url=http://amazon.dev/ \
--db-host=localhost --db-name=magento2 --db-user=root --db-password=root \
--admin-firstname=admin --admin-lastname=admin --admin-email=admin@test.com \
--admin-user=admin --admin-password=admin123 --language=fr_FR \
--currency=EUR --timezone=Europe/Paris --use-rewrites=1
 
#Remise à jour des droits ( car script lancé avec user ubuntu )
sudo chown -R ubuntu:www-data .
 
#Configuration Nginx avec les noms de domaines de tests amazon.dev
echo "Configuration nginx"
cd /etc/nginx/sites-available/
sudo cat <<CONF > magento2.conf
upstream fastcgi_backend {
    server  unix:/run/php/php7.0-fpm.sock;
 }
 server {
    listen 80;
    server_name amazon.dev www.amazon.dev;
    set $MAGE_ROOT /var/www/html/magento2;
    include /var/www/html/magento2/nginx.conf.sample;
}
CONF
sudo ln -s /etc/nginx/sites-available/magento2.conf /etc/nginx/sites-enabled/magento2.conf
sudo service nginx reload

 

Pour installer magento2 il vous suffit de lancer la commande suivante :

#Commande à lancer pour installer via le script
bash <(curl -s https://gist.githubusercontent.com/nenes25/135ab5ad2636c0aa09d1fd9bea6d6e7e/raw/5b003a7263937c2fc1bedef5cb780adf15aa72a0/install-magento2-vm.sh)

Dans mon cas je lie la vm au domaine amazon.dev, du coup il faut associer l’ip de la vm au nom de domaine dans votre fichier host, et le tour est joué.
En quelques minutes vous avez une instance de Magento 2 disponible et testable.