Types: ▶ Bridged ▶ Overlay (software defined network) ▶ Works between hosts! ▶ VXLAN: Layer-2 (Ethernet) frames embedded into Layer-4 (UDP) frames ▶ Custom (via plugins) ▶ Discover container by name: --name [name] ▶ Built-in DNS server ▶ Expose port on the host: -p [host]:[guest]
A ▶ $ docker run -v [/path/to/volume] --name A [...] ▶ Import volumes from A in container B ▶ $ docker run --volumes-from A --name B [...] ▶ Mount host path inside container ▶ $ docker run -v [/host/path/]:[/container/path] [...]
containers to hosts ▶ spread, binpack, random, etc. ▶ Filter: assign containers to hosts based on constraints: ▶ constraint:storage==ssd ▶ affinity:container==mycontainer ▶ affinity:image==~redis ▶ etc.
push images (user/image:tag) ▶ Automatic image build process (using Dockerfiles) ▶ Open source, you can host your own repository! ▶ Public & private visibility