Public | Automated Build

Last pushed: an hour ago
Short Description
wfw
Full Description

Monger Docker Builder

Contains everything you need (except git and some environment variables) to build the entire Monger app ecosystem.

Configuration

Once you've installed Docker on your computer, create a docker-compose.override.yml file using the docker-compose.override.example.yml file as a guide. You currently need to mount all the specified app volumes. You also must mount the ssh volume or else the containers won't start correctly. The mysql and solr volumes get you data persistence, while the composer volume gives you composer download cache persistence. Any logs mounts are not required, but can help you during debugging. The api volume should be mounted if you intend to develop the API.

Each app has an INSTALL environment variable which can be used to run composer installation and set up the API development dependency. This typically only needs to be done the first time you're building or any time you're rebuilding your environment.

Once you've defined all of your volumes and environment variables, just run docker-compose up -d from the root directory and your application should spin up.

Installing Docker

Linux

https://docs.docker.com/engine/installation/linux/

Mac

https://docs.docker.com/docker-for-mac/

Windows 10 Pro / Enterprise / Education 64-bit

https://docs.docker.com/docker-for-windows/

All other Windows versions

https://docs.docker.com/toolbox/overview/

This version can be tricky to set up correctly and requires a bit of tinkering to get volumes mounted. Once it's installed you need to share any folder you want to mount in the VirtualBox UI following these steps: http://serverfault.com/questions/674974/how-to-mount-a-virtualbox-shared-folder/674978#674978

Once you've done that, you need to modify the C:\Program Files\Docker Toolbox\start.sh file by adding the following after the step Checking status on $VM and before Setting env:

STEP="Mounting web directory"
"${DOCKER_MACHINE}" ssh default 'sudo mkdir --parents //c/Web'
"${DOCKER_MACHINE}" ssh default 'sudo mount -t vboxsf c/Web //c/Web'

...replacing c/Web and //c/Web with the mount you just declared in the VirtualBox UI.

You also need to ensure that the same file is operating from the correct directory by adding this line after the for BLUE, GREEN, and NC:

cd "C:\Program Files\Docker Toolbox"

Using Containers

Whenever you want to gain command line access into a docker container, you can use the docker exec command:

docker exec -it devtools bash

You can also view each container's log history (STDOUT and STDERR) by running:

docker logs devtools
Docker Pull Command
Owner
monger
Source Repository

Comments (0)