Skip to main content
Mediacurrent logo
Hero Background Image

Blog Post

Power your Drupal 8 Project with Docksal

by Steven Murray
January 22, 2018

Hello and welcome to my first blog post for Mediacurrent! Today’s post will be all about Docksal and how it can help you get up and running developing on Drupal 8 quickly and easily. This post was inspired by the great session I saw at DrupalCon 2017 and will explain how using Docksal will save you time getting up and running for a new Drupal development project. I’ll also talk about some of the technologies behind Docksal such as Docker and Oracle VM VirtualBox.

How does it work?

Docksal works by using Docker (a software container platform) and VirtualBox ( a general-purpose full virtualizer for x86 hardware) to create projects with a few simple commands. Instead of having many VMs (virtual machines) for all of the projects or websites that you work on, Docker allows a person to use a single VM instance for many websites.

Why Docksal?

So, why Docksal? Why not just use Docker, download Drupal, and get started on development that way? If you’re already quite familiar with the Docker and VirtualBox installation process and you want to customize all of that yourself, you could do just that, but if you don’t the main advantage of Docksal is less set-up to get started on developing code with Drupal.


By following the instructions on Docksal’s documentation, you can see that when using one of its supported OSes, Docksal is installed in two to three steps.

The main step to pay attention to is usually the same for each OS: “fin vm start”. Fin is a handy command line tool that comes with installing Docksal. It allows you to manage all the services related to the docker machine and virtual machine with easy commands.

Saving Time with Docksal: How to customize your stack

To save you time on your projects, Docksal comes with a default set of configurations (or in their language, a “ stack ”) that controls what services your project will use. Within the default stack, you’ll find values for the typical services needed to run a website, such as configurations for PHP, a web server, and a database server. The current configuration being used for your project’s stack can be found by running “fin config show”.

It’s important to note that you should not change the configuration found in the yaml files for the default stack (under ~/.docksal/stacks). If you want to customize your stack, you should instead use the “.docksal” directory in your project. These are created after running “fin start” in your project directory. Customization will allow you to add support for more services, such as Apache Solr, Varnish, Memcache, Selenium, Behat, XDebug, and many more. Since Docksal uses Docker containers, almost any service that can be found on Docker can be made to work with it. A list of some typical services and how to configure them to work with your project can be found under the “Tools and Integrations” section on Docksal’s documentation page.

Docksal currently only comes with two stacks: default and Acquia. The Acquia stack is for quickly getting started on development for an Acquia environment.

I hope this post has served as a helpful guide to jumpstarting a Drupal 8 project with Docksal. For more information on Docksal stacks, please see the following documentation.


Meet team member, Steven Murray

Steven brings 8 years of programming experience, deep level Drupal development expertise and a strong grasp of agile methodologies to his role as a Senior Drupal Developer at Mediacurrent. He is an Acquia Certified Developer.

After graduating from Old Dominion University with a degree in computer science, Steven worked for a small company as a web developer and gained his first experience with Drupal. He continued to build his web development career in the publishing industry, developing and maintaining public facing websites such as Parenting, Islands, Florida Travel and Life, Warren Miller Entertainment, Deer and Turkey Expos and more. Prior to Mediacurrent, Steven was a developer for an agency focused on open source technologies.

Steven quickly got up and running with learning Node.JS and React, switching specialties over to more of a full stack role for development. He has experience with creating custom React component libraries with Storybook, creating sites with Gatsby.JS, creating isomorphic React components, and maintenance on third party node modules. These experiences have helped with the development of both progressive and fully decoupled Drupal websites for the state of Massachusetts, Mediacurrent, the city of Sandy Springs and many others.

Steven loves anime, video games and entirely too much star trek (TNG and Picard!). He also loves to create homemade perfumes and colognes using essential oils and currently resides in the Orlando, Florida area.

Learn more about Steven >

Related Insights