Magento 2 Installation über die Console

Magento2_Startseite_LUMA

Die Informationen in diesem Artikel eignen sich nur für Admins mit SSH Zugang.

Quick Start:

mkdir magento2
cd magento2
nano auth.json

edit json file. Die Keys gibt es hier als Anleitung und Marketplace

git clone https://github.com/magento/magento2.git .
git checkout tags/2.1.0 -b 2.1.0
composer install --prefer-dist --no-interaction
export PATH=$PATH:/var/www/html/magento2/bin
./magento setup:install --db-name db-4 --db-user db-user-4 --db-password TopSecret --admin-user admin --admin-password TopSecret --admin-email code@zentralweb.de --admin-firstname Ivan --admin-lastname Gartsev
./magento indexer:reindex
./magento cache:clean && ./magento cache:flush
./magento deploy:mode:set developer

hier folgen die Details / Erläuterungen zu den einzelnen Consolen Befehlen

Jetzt ist es soweit und ich werde mein erstes Modul für Magento2 Programmieren. Die Idee des Moduls ist bereits vorhanden, da unser Kunde das bereits in seinem Magento 1 Online Shop einsetzt. Meine Aufgabe ist das Modul vom M1 auf M2 zu übertragen.

Vorher würde ich aber für mich ein Entwicklungsumgebung (DEV) Einrichten um das ganze zu starten. Etwas her hatte ich bereits berichtet wie die Instalaltion eines Magento 2 OnlineShops über das Webinterface erfolgen kann. Ich bin kein Freund von Web basierten Installationen, da ich nie mir sicher bin was da gerade geschieht, ob ich alle Ausgaben sehe, ob der timeout reicht, ob die Internet Verbindung noch geht …. eigentlich bin ich etwas klick faul 😉

Daher hatte ich mir vorgenommen eine CE Version von Magento 2 über die Console zu installieren, eventuell das ganze in eine bash Datei zu übertragen und später nur noch per Befehl Magento 2 zu installieren.

Als aller erstes habe ich mir, da es meine erst, ernsthafte Begegnung mit dem Magento 2 ist, die Dokumentation für Magento 2 durchgelesen. Diese hilft sehr um das allgemein Verständnis für das System zu bekommen. Ebenfalls wird in der Dokumentation darauf hingewiesen welche Tools und Settings die Installation benötigt.

Installiert wurde das ganze bei MaxCluster auf unserem DEV WebSpace, daher hatte ich den Vorteil das zum Beispiel der Composer bereits installiert ist.

Als erste legte ich einen Ordner an wo das ganze System installiert werden soll:

mkdir magento2
cd magento2
nano auth.json

ebenfalls in diesem Ordner lege ich eine auth.json Datei an. Diese dient der Authentifizierung bei GitHub für Magento. Wenn das Magento auch als Archive runtergeladen wird, ist eine Anmeldung bei Magento erforderlich. Die Datei sieht so aus:

{
 "github-oauth": {
 "github.com": "projumper"
 },
 "http-basic": {
 "repo.magento.com": {
 "username": "public key",
 "password": "private key"
 }
 }
}

Anschließend die Repository klonen und je nach dem welche Version benötigt wird, diese auschecken:

git clone https://github.com/magento/magento2.git .
git checkout tags/2.1.0 -b 2.1.0

Hier nehme ich die Version 2.1.0. Zu diesem Zeitpunkt ist das die stabilste Version. Da bei Magento jetzt alles über die dependencies von composer läuft ist das holen der Dateien, Bibliotheken, Modulen ein Kinderspiel:

composer install --prefer-dist --no-interaction
composer install ohne OAuth Token von GitHub
composer install ohne OAuth Token von GitHub

Leider wird wahrscheinlich GitHub wieder eine API Limit Restriktion haben:

Could not fetch https://api.github.com/repos/XYXYXYXYXXYX, please create a GitHub OAuth token to go over the API rate limit

ich habe das mit dem –prefer-dist und –no-interaction umgangen, dank diesem Link gelöst. Ansonsten könnte auch der Token eingegeben werden. Jetz sind wir auch schon fast am Ende der Instalaltion über die Console, unglaublich nicht mal 10 min!Was jetzt noch fehlt ist die normale Datenbank Settings. Diese werden über das Magento 2 eigenes CLI Tool, welches dem n98-magerun ziemlich ähnlich ist ausgeführt:

./magento setup:install --db-name db-4 --db-user db-user-4 --db-password TopSecret --admin-user admin --admin-password TopSecret --admin-email code@zentralweb.de --admin-firstname Ivan --admin-lastname Gartsev
./magento indexer:reindex
./magento cache:clean && ./magento cache:flush
./magento deploy:mode:set developer

Die Parameter beschränken sich nur auf die Pflicht angaben. Anschließend sollte folgender Status Screen durchlaufen:

Magento 2 Installation Anzeige. magento setup:install
Magento 2 Installation Anzeige. magento setup:install

Die Erfolgsmeldung am Ende freut einen sehr und der Pfad zu dem neuem Admin wird angezeigt:

[SUCCESS]: Magento installation complete.
[SUCCESS]: Magento Admin URI: /admin_1gylt7

Fertig 15min.

Rideo On !

Magento 2 Installation über die Console