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.