Compose defines and runs multi-container Docker applications.
Using a single yaml file it is possible to run multiple docker containers for complex applications. For example one contaner for the web app, one for the database and one for redis, all with a single command.
Official Installation guide
Don’t use the repository like in the docker installation, it is not up to date.
Check the release page to download the latest version.
The official installation instruction suggest to install in /usr/local/bin, I ignored that.
curl -L https://github.com/docker/compose/releases/download/1.21.0-rc1/docker-compose-Linux-x86_64 -o /usr/bin/docker-compose chmod +x /usr/bin/docker-compose
Magento2 with compose
Create a folder for the project and download compose and environment files
mkdir magento2 cd magento2 curl https://raw.githubusercontent.com/alexcheng1982/docker-magento2/master/docker-compose.yml -o docker-compose.yml curl https://raw.githubusercontent.com/alexcheng1982/docker-magento2/master/env -o env
The yaml file with modified port mapping
version: '3.0' services: web: image: alexcheng/magento2 ports: - "8080:80" links: - db env_file: - env db: image: mysql:5.6.23 volumes: - db-data:/var/lib/mysql/data env_file: - env phpmyadmin: image: phpmyadmin/phpmyadmin ports: - "8580:80" links: - db volumes: db-data:
# run in daemon mode docker-compose up -d