Installation de Magento 2 sur une distribution Linux Debian 8

Pour le tutoriel, j’utilise une machine virtuelle composée de 4 processeurs et de 4 Go de mémoire vive sous Virtualbox.

Pré-requis

  • Disposer d’un serveur sous Linux Debian 8
  • Avoir une connexion au serveur par SSH ou par un Terminal

Objectifs

Installer Magento 2 depuis le dépôt GIT officiel.

Tutoriel

Installation des composants indispensables

Pour installer Magento 2, il est nécessaire d’avoir les composants suivants :

  • Curl
  • Apache 2
  • MariaDB
  • PHP 7
  • Git
  • Node.js
  • Grunt

Lancer un Terminal ou une connexion SSH, se connecter avec l’utilisateur « root ».

PHP 7 n’étant pas dans les dépôts officiels de Debian, il est nécessaire d’ajouter le dépôt maintenu par dotdeb.org. Pour cela, lancer les commandes suivantes :

echo "deb http://packages.dotdeb.org jessie all" > /etc/apt/sources.list.d/dotdeb.list
wget -O- https://www.dotdeb.org/dotdeb.gpg | apt-key add -
apt update

S’authentifier en tant qu’administrateur du serveur :

su nom_de_l'administrateur

Installer les composants :

sudo apt-get install -y curl git apache2 mariadb-server mariadb-client php7.0 php-curl php7.0-gd imagemagick php7.0-intl php7.0-intl php7.0-xsl php7.0-mbstring libapache2-mod-php7.0 mcrypt php7.0-mcrypt php-xml php-soap php7.0-zip php7.0-mysql

Installer Node.js :

curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -
sudo apt-get install -y nodejs

Finisser par l’installation de Grunt :

sudo npm install -g grunt-cli

Installer Composer :

php -r "copy('https://getcomposer.org/installer', '/tmp/composer-setup.php');"

Visiter le site (Composer Public Keys / Signatures) suivant et copier la clé SHA-384.

Coller la clé SHA-384 à la place de sha_384_string dans la commande ci-dessous :

php -r "if (hash_file('SHA384', '/tmp/composer-setup.php') === 'sha_384_string') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('/tmp/composer-setup.php'); } echo PHP_EOL;"

Lancer la commande pour terminer l’installation :

sudo php /tmp/composer-setup.php --install-dir=/usr/local/bin --filename=composer

Configuration des composants installés

Activer le mode rewrite d’Apache et redémarrer le service :

sudo a2enmod rewrite && sudo service apache2 restart

Configurer MariaDB :

sudo mysql_secure_installation

Ne pas oublier de créer un utilisateur et une base de données dans MySQL, voici la commande de création d’un utilisateur et d’une base de données :

CREATE USER 'nom_de_l'utilisateur'@'%' IDENTIFIED BY '***';GRANT USAGE ON *.* TO 'nom_de_l'utilisateur'@'%' IDENTIFIED BY '***' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;CREATE DATABASE IF NOT EXISTS `nom_de_la_bdd`;GRANT ALL PRIVILEGES ON `nom_de_la_bdd`.* TO 'nom_de_l'utilisateur'@'%';

Changer le propriétaire du dossier /var/www/ et modifier les droits :

sudo chown -R www-data:www-data /var/www/
sudo chmod -R 775 /var/www/

Installation de Magento 2

Au préalable, créer un nouvel utilisateur

sudo adduser nom_de_l'utilisateur

Ajouter l’utilisateur précédemment créé dans le groupe www-data :

sudo usermod -g www-data nom_de_l'utilisateur

Changer d’utilisateur :

su nom_de_l'utilisateur

Créer un dossier boutique dans /var/www/ :

mkdir /var/www/nom_du_dossier && cd /var/www/nom_du_dossier/

Créer le vhost pour Apache :

sudo nano /etc/apache2/sites-available/nom_du_fichier.conf
sudo a2ensite nom_du_fichier.conf && sudo service apache2 restart

Installer Magento 2 depuis Git :

cd /var/www/nom_du_dossier/ && git clone -b 2.1 https://github.com/magento/magento2.git .

Modifier le fichier composer.json et remplacer la ligne :

"fabpot/php-cs-fixer": "~1.2"

par :

"friendsofphp/php-cs-fixer": "~2.0"

Lancer la commande :

composer update

Attribuer les droits aux différents dossiers :

sudo find . -type d -exec chmod 755 {} \; && sudo find . -type f -exec chmod 644 {} \; && sudo chmod u+x bin/magento; sudo chmod -R g+w ./{pub,var}; sudo chmod -R g+s ./{pub,var} && chmod -R 775 app/etc/

Ouvrir le site dans un navigateur pour finaliser l’installation.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *