Composer package for dockerizing Magento 2
Switch branches/tags
Clone or download
Pull request Compare This branch is 2 commits ahead, 24 commits behind arvatoSCM:develop.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin
config
.gitignore
CHANGELOG.md
LICENSE
README.md
composer.json
docker-compose.yml

README.md

Dockerize Magento 2

A composer package for dockerizing Magento 2

The composer package arvatoscm/dockerize-magento2 deploys docker infrastructure definition files such as docker-compose.yml to your Magento 2 root folder and enables you to host your Magento 2 shops without having to install Apache/Nginx, MySQL or PHP on your system.

Package Name

arvatoscm/dockerize-magento2

Software Requirements

For Linux users you must have a recent version of docker and docker-compose installed.

If you are a Mac or Windows user, use the Docker Toolbox.

Installation

Add arvatoscm/dockerize-magento2 to your existing Magento 2 shop:

composer require --ignore-platform-reqs arvatoscm/dockerize-magento2
chmod +x bin/console

This will place some files in your Magento root:

  • docker-compose.yml The docker infrastructure definition
  • bin/console A utility script for controlling dockerized Magento projects
  • config A folder which contains the configuration files for PHP, Nginx and phpMyAdmin

Usage

dockerize-magento2 comes with bin/console script that can be used to install Magento and to execute Magento's bin/magento script inside the PHP docker container:

Trigger the Magento 2 installation process:

bin/console install <hostname>

Start the docker containers:

bin/console start

Stop the docker containers:

bin/console stop

Execute bin/magento inside the docker container:

bin/console exec [arguments]

For more information on how to use docker-compose visit: https://docs.docker.com/compose/

Configuration

The install action depends on some parameters such as usernames and passwords. We have put in some default values for you that will work for a quick test:

DATABASE_NAME="magento2dockerized"
DATABASE_USER="magento"
DATABASE_PASSWORD="enAVINa2"
DATABASE_ROOT_PASSWORD="enAVINa2"

ADMIN_USERNAME="admin"
ADMIN_FIRSTNAME="Admin"
ADMIN_LASTNAME="Inistrator"
ADMIN_EMAIL="johndoe@example.com"
ADMIN_PASSWORD="enAVINa2"

DEFAULT_LANGUAGE="en_US"
DEFAULT_CURRENCY="EUR"
DEFAULT_TIMEZONE="Europe/Berlin"

BACKEND_FRONTNAME="management"

If you want to use different parameters change the values in the config/env.sh file to your needs. After customizing the parameters just trigger the installation with bin/console install <hostname>.

Licensing

dockerize-magento2 is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.