We are very excited to bring you the first installation of a new series of tutorials on Drupal Development with Docker! The author of this series, Tess Flynn, is also author of the Flag module for Drupal 8, and has given sessions at Drupal Cons and Drupal Camps throughout the world on Drupal 8 development, Docker, and DevOps.
Drupal developers have relied on local development environments like MAMP, WAMP, and Acquia Dev Desktop for years. While these are each effective solutions, they come with their share of problems. Do your PHP settings match your production environment? Are you using the same versions? What if you need to switch versions for different projects? How do you quickly change systems or on-board new team members quickly?
In this series we introduce Docker, a container runtime that allows you to run pre-packed, sandboxed Linux applications anywhere. We'll start by running a single container on the command line, build up to running Drupal in Docker, cover how to build your own containers, and how to add Docker to your Drupal development workflow.
To get started in this series, we'll assume you're familiar with the basics of using the command line, including how to enter and run commands. (You can review our Command Line Basics series if you need to brush up.) A familiarity with Drupal development practices and Linux is helpful but not required.
Tutorials in this week's release:
- Best Practice Drupal Development
- What Is Docker?
- Install Docker
- Run a Container Interactively
- What Is a Container?
- What Is an Image?
- Use a Detached Container
- Run Sets of Containers
- Create a Compose File
- Start, Stop, and List Container Sets
- Get Data into Containers
- Use Bind Volumes
- Set Environment Variables
- Expose Ports
- Import and Export Databases into a Container
- Docker Hub
- List, Delete, and Update Images
- Use Tags in Docker
- Run Drupal in Docker