Short url to this project:
http://moourl.me/FJn
:toc:
- Docker is a technology for lightweight VMs. Well, that's not true, they're not VMs. But they feel like it.
- Why containers are lightweight but not VMs. <-- READ this one
- Containers are not VMs, a picture
from this article
- Technologies that Docker and other container runtimes are using
from Wikimedia
- VMs are houses, Docker containers are appartment buildings.
- You can do containers without Docker. Docker is just an implementation! Using Docker has been a bumpy ride, so it makes sense to consider alternatives.
- rkt by CoreOS. rkt compared to other runtimes. rkt vs Docker (2016)
- There's a standard for containers! Well, actually two, one for the runtime, one for the images.
Docker uses a bunch of concepts and has specific words for those. To be able to read documentation, and to talk to others, it's very important to understand what they mean.
In the following I'm trying to show a few analogue words from related domains, such as VMs or programming runtimes.
| Containers with Docker | VMs | AWS EC2 | Python | Node JS |
|---|---|---|---|---|
| Docker | VMWare, VirtualBox | - | CPython, PyPy, Jython | ? |
| Image | VM Snapshot | AMI | .py file | .js file |
| Container | Running VM | EC2 instance | A running Python process | A running Node process |
| Docker Hub | ? | AWS Marketplace for AMIs | official pypi | the official NPM registry |
| Docker registry | ? | - | A pypi server | an npm server |
Here's a cool online live-coding tutorial by Katacoda. It covers a lot: volumes, networking, docker-compose, Docker Swarm
To explore Docker on your local, have a look at this easy to follow step-by-step guide by Gitlab.
Explore docker-compose!
- Three very basic docker-compose koans
- Django with docker-compose
- Complete this Runnable step-by-step guide.
- Explore this full-blown Django setup, with Postgres DB, RabbitMQ, NGINX.
?
