Einrichten einer Magento2 Entwicklungsumgebung mit DDEV

Einrichten einer Magento2 Entwicklungsumgebung mit DDEV

Mit DDEV kann innerhalb weniger Minuten eine funktionierende lokale Magento2 Entwicklungsumgebung aufgesetzt werden.

Im folgenden wird die Installation der Magento 2 Entwicklungsumgebung mit DDEV beschrieben. Forausgesetzt wird dabei, dass Docker und DDEV bereits installiert sind.

Vorbereitung der DDEV-Umgebung

Mit den folgenden Befehlend wird die DDEV-Umgebung eingerichtet. Dabei muss auch zusätzlich der Suchindex OpenSearch installiert werden.

mkdir mage2dev
cd mage2dev
ddev config --project-type=magento2 --docroot=pub --create-docroot
ddev get sebastian-ehrling/ddev-opensearch

Authentifizierungs-Keys

Bevor wir im nächsten Schritt mit der Installation fortfahren legen wir nun eine Konfigurationsdatei mit den nötigen Authentifizierungs-Keys an:

Die Tokens füge ich dann in meine Konfigurationsdatei ein:

vim .ddev/homeadditions/.composer/auth.json

Anstatt vim kann hier natürlich auch gleich die IDE oder ein GUI Editor verwendet werden.

{
    "http-basic": {
        "repo.magento.com": {
            "username": "eddcfbc6cb896d14bb7c3a64c0cd3df0",
            "password": "8f9cb7745bcfb232437e695f6072240a"
        }
    },
    "github-oauth": {
        "github.com": "ghp_bf215181b5140522137b3d4f6b73544aX3oH"
    }
}

Der Inhalt des Ordners .ddev/homeadditions wird beim Start der DDEV-Umgebung in den Home-Ordner kopiert. Somit stehen die nötigen Keys beim nächsten Start automatisch zur Verfügung.

Start der DDEV-Umgebung

Abschließend wird die Umgebung gestartet und die Container-Shell verbunden (ddev ssh) um die Befehle im nächsten Schritt im Container-Kontext auszuführen.

ddev start
ddev ssh

Installation Magento2

Im nächsten Schritt wird Magento2 via composer installiert.

composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition
find var generated vendor pub/static pub/media app/etc -type f -exec chmod g+w {} +
find var generated vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} +
chmod u+x bin/magento
bin/magento setup:install \
--base-url=https://mage2dev.ddev.site/ \
--db-host=db \
--db-name=db \
--db-user=db \
--db-password=db \
--admin-firstname=Max \
--admin-lastname=Mustermann \
--admin-email=max.mustermann@example.com \
--admin-user=admin \
--admin-password=admin123 \
--language=de_DE \
--currency=EUR \
--timezone=Europe/Vienna \
--use-rewrites=1 \
--search-engine=opensearch \
--opensearch-host=opensearch \
--opensearch-port=9200 \
--opensearch-index-prefix=magento2 \
--opensearch-timeout=15

Damit steht die Magento2 Basis-Installation auch schon bereit.

Magento2 Demo-Daten

Wer nun auch noch Demo-Daten benötigt kann diese mit 2 weiteren Befehlen installieren:

bin/magento sampledata:deploy
bin/magento setup:upgrade

Im Browser ist die Magento-Installation dann unter https://mage2dev.ddev.site/ erreichbar.