Joomla Entwicklungsumgebung mit docker

Aus revampedia

Joomla Entwicklungsumgebung mit docker nutzen.

Um die Einrichtung einer Entwicklungsumgebung für Joomla zu vereinfachen, habe ich diese mittels docker/docker-compose vorbereitet.

Anwendung

Voraussetzungen

  • aktuelles docker sowie docker-compose
  • git

Auf unserem delfin-web sind diese bereits installiert.

docker-compose Umgebung einrichten

Klonen des git repository ins home Verzeichnis: https://github.com/rebootl/joomla-docker-devel.git

$ git clone https://github.com/rebootl/joomla-docker-devel.git
$ cd joomla-docker-devel

Allenfalls die Konfigurationsdatei docker-compose.yaml anpassen.

Da auf delfin-web mehrere Leute arbeiten sollten dort der Port 8085, der Container Name sowie der image Name angepasst werden.

Z.B. hier bei image und container_name -cem1 angehängt, sowie ports auf "80086:80" geändert.

version: '3'

services:
  web:
    build: ./apache-joomla
    image: myjoomla-cem1
    container_name: myjoomla-test-cem1
    depends_on:
      - "db"
    ports:
      - "80086:80"
    volumes:
      - "./apache-joomla/joomla:/var/www/html"
  db:
    build: ./mariadb-joomla
    image: mymariadb-cem1
    container_name: mymariadb-test-cem1
    environment:
      MYSQL_ROOT_PASSWORD: example
      MYSQL_DATABASE: joomla
      MYSQL_USER: joomla
      MYSQL_PASSWORD: xyz123
#    ports:
#      - "3306:3306"

Existierende Joomla Installation

Für die Datenbank muss ein ge-gzippter Dump unter ./mariadb-joomla/joomla.sql.gz platziert werden.

Die Joomla Dateien müssen unter ./apache-joomla/joomla/ eingefügt werden.

Beispiel tar.gz aus Originaldateien erstellen:

/var/www/revamp/$ tar -czf joomla.tar.gz joomla/

tar.gz nach ./apache-joomla/ kopieren und entzippen mit:

$ tar -xzf joomla.tar.gz

Die Berechtigungen sowie die configuration.php werden beim erstellen des Containers automatisch angepasst.

Der geänderte Datenbankname muss aber noch nachträglich eingefügt werden, z.B. in ./apache-joomla/joomla/configuration.php:

public $host = 'mymariadb-test-cem1';

Neue Joomla Installation

Zeile welche die Datenbank kopiert im Dockerfile auskommentieren, ./mariadb-joomla/Dockerfile:

#ADD joomla.sql.gz /docker-entrypoint-initdb.d/joomla.sql.gz

Joomla herunterladen und ins Verzeichnis ./apache-joomla/joomla Verzeichnis entpacken.

$ cd apache-joomla/
$ mkdir joomla
$ cd joomla/
$ wget https://downloads.joomla.org/cms/joomla3/3-9-11/Joomla_3-9-11-Stable-Full_Package.zip?format=zip
$ mv Joomla_3-9-11-Stable-Full_Package.zip?format=zip Joomla_3-9-11-Stable-Full_Package.zip
$ unzip Joomla_3-9-11-Stable-Full_Package.zip

Datenbank Server beim Setup im Browser eintragen, e.g.: mymariadb-test-cem1

Container start/stop

Container builden und starten, unter jooma-docker-devel/:

$ docker-compose build
$ docker-compose up

Stoppen mit Ctrl-C oder:

$ docker-compose down

Danach sollte Joomla erreichbar sein unter http://delfin-web:80086/

Weiteres

Siehe auch: Kivitendo Entwicklungsumgebung mit docker

Sowie README.md und Notizen apache-joomla.notes.md, mariadb-joomla.notes.md.