Wednesday 9 a.m.–12:20 p.m.
Docker 101: Introduction to Docker
Andrew T. Baker
- Audience level:
- Novice
- Category:
- Systems Administration
Description
Docker was one of last year’s most talked about open source projects - but what is it? And what does it mean for deploying applications? This tutorial will explain what Docker is and where it fits in with other deployment and configuration management tools. Students will then learn the basics of working with Docker containers, how to “dockerize” their Python apps, and some emerging best practices.
Abstract
[Docker](https://docker.com/) is an open source, lightweight, virtualized environment for portable applications. With all the buzz it has attracted, it can be hard to figure out exactly what Docker is and what it can do for you. This tutorial will teach you the fundamentals of Docker, why it’s making waves, and how it might be a useful addition to your platform.
In this session you will:
- Learn the basics of working with Docker containers and images
- Create your own Docker images
- Learn how to “dockerize” a sample Flask application
- Publish to the [Docker Hub](https://hub.docker.com/) (the GitHub of Docker)
- Use Fig to manage multiple Docker containers at once
- Learn about deploying to one of the new Docker-specific cloud hosting services
Students will spend most of this session getting their hands dirty in a series of exercises, which are introduced with some brief presentations. The exercises will be mostly self-paced, though students are encouraged to seek help from the instructor or their neighbors if they need it. The session is loosely based off O’Reilly’s “Introduction to Docker” video tutorial.
A Vagrantfile and Ansible playbook will be available to help students work locally. Fully provisioned cloud servers will be provided for students who don’t want to set up local development environments.
Student Handout
No handouts have been provided yet for this tutorial