Meet the portable future
Presented at PyOhio on 7/26/14
- Short presentation covering docker basics
- Self-paced tutorials
- Informal, collaborative feel
- Ask questions anytime!
What is docker?
Docker is something new
Docker is an open-source engine that automates the deployment of any application as a lightweight, portable, self-sufficient container that will run virtually anywhere.
Typical docker architecture
Why is this a big deal?
commoditization of computing services
$ docker run busybox /bin/echo foobar >> /tmp/foo.txt
$ docker commit -m "Add foo.txt" e25605a6d745 atbaker/foobar
# Spin-docker example dockerfile for a Django project # Use phusion/baseimage as base image FROM phusion/baseimage:0.9.8 MAINTAINER Andrew T. Baker <email@example.com>
# Add the Django app and install its requirements ADD sd_sample_project /var/www/django RUN apt-get install -y python-pip RUN pip install virtualenv RUN virtualenv /var/www/venv RUN /.../venv/bin/pip install -r /.../requirements.txt
Git for deployment?
|image||repository||collection of commits|
|container||clone||used for local execution|
|docker hub||GitHub||popular remote server|
- Downloaded 1,000,000+ times
- Powers 300+ projects
- 350+ docker contributors
- 10,000+ GitHub stars
What are people
doing with docker?
Continuous Integration (CI)
And the tools are
getting better too
Getting better all the time
If not, it's tutorial time!
- Docker basics
- Dockerizing your own apps
- Managing your development environments with Fig
- Learn how to use Drone, Deis, and Tutum
- Play with the docker API
- Or, just talk with other folks about Docker
Cloud server signup
By Andrew T. Baker