15
Demystifying Docker Networking Practical guide to black magic Lorenzo Fontana February 8, 2017

Demystifying Docker Networking - Practical guide to black magic

  • Upload
    lycong

  • View
    236

  • Download
    6

Embed Size (px)

Citation preview

Page 1: Demystifying Docker Networking - Practical guide to black magic

Demystifying Docker Networking

Practical guide to black magic

Lorenzo Fontana

February 8, 2017

Page 2: Demystifying Docker Networking - Practical guide to black magic

Libnetwork

Page 3: Demystifying Docker Networking - Practical guide to black magic

CNM: Container Network Model

• Sandbox

• Endpoint

• Network

1

Page 4: Demystifying Docker Networking - Practical guide to black magic

CNM: Container Network Model (cont’d)

2

Page 5: Demystifying Docker Networking - Practical guide to black magic

Network Drivers 101

Page 6: Demystifying Docker Networking - Practical guide to black magic

Null

# docker run -it --network=none alpine sh

3

Page 7: Demystifying Docker Networking - Practical guide to black magic

Default Bridge (docker0)

# docker run -it alpine sh

4

Page 8: Demystifying Docker Networking - Practical guide to black magic

Custom Bridge (mybridge)

# docker network create -d bridge \

-o com.docker.network.bridge.name=mybridge \

mybridge

# docker run -it --net mybridge alpine sh

5

Page 9: Demystifying Docker Networking - Practical guide to black magic

Custom Bridge Network IPAM underlay (myunderbr)

# docker network create -d bridge --subnet

=192.168.10.0/24 --gateway =192.168.10.254 \

--aux -address DefaultGatewayIPv4 =192.168.10.1 -o

com.docker.network.bridge.name=myunderbr

myunderbr

# brctl addif myunderbr enp5s0

# docker run -it --net myunderbr alpine sh

# docker run -it --net myunderbr --ip 192.168.10.90

nginx :1.9

# ip a del 192.168.10.254/24 dev myunderbr 6

Page 10: Demystifying Docker Networking - Practical guide to black magic

Macvlan & IPvlan

7

Page 11: Demystifying Docker Networking - Practical guide to black magic

Overlay network (myoverlay)

# docker network create -d overlay myoverlay

# docker service create --network myoverlay nginx

8

Page 12: Demystifying Docker Networking - Practical guide to black magic

Overlay network (cont’d)

9

Page 13: Demystifying Docker Networking - Practical guide to black magic

IPVS

Page 14: Demystifying Docker Networking - Practical guide to black magic

10

Page 15: Demystifying Docker Networking - Practical guide to black magic

Questions?

10