Dockerfile

A Dockerfile provides a lightweight Domain Specific Langauge (“DSL”) for installing and configuring a Linux OS. It’s a simple way of documenting-as-code the necessary steps to set up software with all dependencies.

Infrastructure as Code

Easy to Learn

If you’ve even written a shell script, then you’ll learn how to write a Dockerfile in less than an hour. This avoids the need to learn a more complex configuration management language such as Ansible, Chef or Puppet.

If you are not comfortable writing shell scripts, then this is a great time to learn since this is not going away and is an essential skill of DevOps.

Reproducible

Linux Distribution Agnostic

Lives alongside the application code