Let me ask you
- Who knows about Docker?
- Who uses Docker for development?
- Who uses Docker in production?
- Who tried but could not do it?
What is Docker (v1.9)
Docker is an open platform for developing, shipping, and running applications started at March 2013.
Docker allows you to package an application with all of its dependencies into a standardized unit for software development.
Docker Benefits
- Fast (deployment, migration, restarts)
- Secure
- Lightweight (save disk & CPU)
- Open Source
- Portable software
- Microservices and integrations
- Simplify DevOps
- Version control capabilities
Common Docker usages
- Rapid building
- Debugging/Testing
- Continuous Integration & Deployment
- Scaling
- Development collaboration
- System configuration
- Local development
- Multi-tier applications
- Linux x86-64
- Go language
- Client - Server (deamon) architecture
- Union file systems (UnionFS: AUFS, btrfs, vfs etc)
- Namespaces
- Control Groups (cgroups)
- Container format (libcontainer)
Basic terminology
- commands/instructions
- Dockerfile
- image
- registry
- container
- docker cluster
- ...
Steps of a Docker workflow
The Docker toolbox
- docker-engine
- docker-compose
- swarm
- docker-machine
- Kitematic
- ...
The Docker war
- Tools around Docker and for Docker...
- The trends and the feature
Docker as a Service and hubs
- hub.docker.com
- Google container engine
- Your own private registry
- ...
Docker examples
docker run --rm -it supertest2014/nyan
- Run commands on container
- Build an image
- Linked containers (py app)
- Docker as a vm
- Package an app with its environment (tar)
- Share an image (public)
- Scale an app
- Testing usage
- Try everything inside Docker
Docker tips
- Optimize containers
- Linked best practices
- Your private registry
- Cleanup your docker files (<nonegt;:<nonegt;)
- Create shortcut commands
- Debugging containers
- Docker Remote API
- Network issues
Docker for Developers
Python Meetup Thessaloniki, 15 April 2016
TheodorosPloumis.com / @theoploumis
Get the presentation online/source