Sign inSign up

mkstevens/base29

By mkstevens

•Updated over 3 years ago

Magnolia CMS Image 6.2.29

Image
1

999

mkstevens/base29 repository overview

⁠Magnolia DX Docker Image based on 6.2.29

⁠Overview

This Docker image is intended to be used as the basis for Magnolia light module development and was created using the 'mgnl' command line utility documented here⁠. This image supports both Arm64 (Apple Silicon) and Amd64 (x86_64). It includes all of the necessary tooling to test drive Magnolia DX Author, develop light modules, install connector packs and features like Live Copy, Translation, I18N, etc.

Included Tools:

  • Magnolia DX version 6.2.29
  • mgnl CLI version 4.0.3
  • OpenJDK version 11
  • Node version 18.15.0
  • Maven version 3.6.3
  • Preconfigured Maven Archetype

⁠Prerequisites

  • Magnolia DX trial license key (provided by Magnolia)
  • Magnolia Nexus Credentials (provided by Magnolia)
  • Docker (engine or Desktop)
  • Code Editor of choice (VSCode, Webstorm, Notepad++, etc.)

⁠Quick Start Instructions - command line

  1. ⁠Install Docker engine⁠ or Docker Desktop⁠ for your particular platform/OS
  2. ⁠Open a terminal window or command prompt
  3. ⁠'Pull' this Docker image docker pull mkstevens/base29:latest
  4. ⁠Verify the image was pulled docker image ls -a
  5. ⁠Create a Container from the above image docker run --publish 8080:8080 --detach --name myContainerName --volume /localPathTo/lightModules:/magnolia/light-modules mkstevens/base29
  •       --publish 8080:8080 - required to publish the Magnolia UI running on port 8080 to your host. Accessed via http://localhost:8080⁠
  •       --detach - runs the docker container in the background
  •       --name myContainer - optional, the created container will be named 'myContainer'
  •       --volume /localPathTo/lightModules:/magnolia/light-modules - maps your local filesystem into the Container filesystem at /magnolia/light-modules DO NOT modify the /magnolia/light-modules path in the command line.
  1. ⁠Verify Container was created and is running docker container ls -a
  •        Note the CONTAINER ID and NAMES; you will use one or the other to access (terminal/command line) and to stop/restart the container
  1. ⁠Access the Container - From a terminal docker exec -it CONTAINER ID /bin/sh or docker exec -it NAMES /bin/sh from the step above.
  •        /bin/bash may be substituted as the shell
  1. ⁠Start Magnolia DX - From the /bin/sh or /bin/bash shell created above cd magnolia followed by mgnl start.
  •        Note: To stop Magnolia DX control-c from the same shell window as above
  1. ⁠FINAL STEP - Verify Magnolia DX startup by navigating to http://localhost:8080⁠ from Chrome/Edge/IE/Firefox
  •       Note: Depending on host system spec (CPU/RAM/etc.) Magnolia DX startup can take several minutes

⁠Quick Start Instructions - Docker Desktop

Coming soon!

⁠Stopping and Restarting a Container and Magnolia DX - command line

  1. To stop Magnolia DX control-c from the same shell window that was used to start Magnolia DX
  2. To stop the Container docker container stop myContainerName where 'myContainerName' is your Container
  3. To restart the Container docker container start myContainerName where 'myContainerName' is your Container

⁠Creating/Importing your first light module.

Core concepts

  • Use a terminal connected to the Docker Container to interact with Magnolia DX processes to create light-modules via the Magnolia Command Line Interface mgnl preinstalled on the Docker Image
  • Use your code editor of choice (VSCode, Webstorm, NotePad++, etc.) installed on local/host system to edit page templates, components and configuration files
  • Docker automatically synchronizes changes from the local/host system to the Docker Container running Magnolia DX via the --volume parameter during Container creation
  1. ⁠Open a terminal or command prompt
  2. ⁠Start the Magnolia Docker Container docker start CONTAINER ID or docker start NAMES if not already started
  • Use docker container ls -a to get a list of all containers
  1. ⁠Shell into the running container docker exec -it CONTAINER ID /bin/sh or docker exec -it NAMES /bin/sh using the CONTAINER ID or NAMES from above
  • /bin/bash may be substituted as the shell
  1. ⁠Start Magnolia DX if not already started - From the /bin/sh or /bin/bash shell created above cd magnolia followed by mgnl start.
  2. ⁠Start a NEW terminal or command prompt if needed and Shell into the running container docker exe -it CONTAINER ID /bin/sh or docker exec -it NAMES /bin/sh. You will use this shell window to interact with the Magnolia DX CLI
  • /bin/bash may be substituted as the shell
  1. ⁠Change directory into /magnolia/light-modules cd magnolia/light-modules
  2. ⁠Create your first light module mgnl create-light-module myModuleName
  1. ⁠Open VSCode (or editor of choice) to the local/host filesystem pointed to the --volume parameter during Container creation and start editing!

Tag summary

Content type

Image

Digest

sha256:a9fe36138…

Size

751.6 MB

Last updated

over 3 years ago

docker pull mkstevens/base29