Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Python Apps and Docker - Matt Wright

Python Apps and Docker - Matt Wright

An overview of why and how one might use Docker for Python applications

PyGotham 2014

August 16, 2014
Tweet

More Decks by PyGotham 2014

Other Decks in Programming

Transcript

  1. Matt Wright @mattupstate Software/Ops Engineer @ChatID • Python, Lua, CoffeeScript

    • Flask, Prosody, Backbone, Angular Open Source • Author: Flask-Security, Flask-JWT, ... • Contributor: Ansible, Flask • Member: metaflask
  2. “... an open platform for developers and sysadmins to build,

    ship, and run distributed applications.” http://docker.com/whatisdocker Docker:
  3. Images A stateless, read-only collection of “layers” joined together via

    a union filesystem. Containers A stateful instance of an image in which one or more processes are running or have exited Docker: Concepts
  4. Docker: Components Docker Engine A portable, lightweight system level daemon

    that manages images and containers Docker Hub A web service for distributing images and enabling automated workflows
  5. Docker Hub Server Docker Engine Docker CLI Containers Images Docker:

    Birds Eye View Repository Images Repository Images Repository Images Repository Images
  6. • Development Environments • Application Deployment • Continuous Integration •

    Continuous Delivery • Platform-as-a-Service (PaaS) Docker: Use Cases
  7. Tooling Kubernetes Marathon maestro-ng Shipyard fig Platforms Elastic Beanstalk CoreOS

    flynn.io deis.io Docker: Landscape SaaS circleci.com shippable.com drone.io quay.io and many more (to come) ...
  8. +

  9. • README • Stacks (LAMP, XAMP) • Virtual Machines •

    Vagrant + (Chef | Puppet | Ansible) Dev Envs: Before
  10. • Easy to change and share • Always consistent •

    100% Isolated • Single authority • Production ready! Dev Envs: Docker!
  11. • Be skeptical of Docker dogma • Keep secrets out

    of env vars • Don’t use Docker for everything • Design images carefully Docker Tips