Docker er en samling af open-source software til automatisering af udrulning og drift af applikationer, herunder alle applikationernes afhængigheder, i containere med standardiserede omgivelser på Linux computere/servere.
-
+
Docker Networking
Ved brug af Docker på computere/servere på AAUs netværk, så vær opmærksom på, at Docker som standard laver nogle netværkskonfigurationer, som forhindrer brug af AAUs netværk, idet Docker som standard overtager og blokerer alt netværkstrafik til og fra alle
172.16.0.0/16
,172.17.0.0/16
og172.18.0.0/16
IP-numre uden for Docker.Dette medfører blandt andet, at computerne/serverne ikke længere kan kontakte AAUs interne DNS-servere på
172.18.21.2
og172.18.21.34
, hvilket medfører at hostnavne ikke længere kan oversættes til IP-numre og at stort set alt netværksmæssigt derfor holder op med at virke på computerne/serverne.Der er på AAUs netværk reserveret et større antal IP-numre til brug for Docker og andre former for virtualisering "internt" på computere/servere, idet disse IP-numre ikke routes på AAUs netværk og derfor kan bruges "internt" på alle compture/servere uden at dette påvirker netværkstrafik til og fra andre computere/servere.
De reserverede IP-numre til brug "internt" i bl.a. Docker er IP-numrene i
10.14.0.0/16
intervallet.På blandt andet Ubuntu konfigureres Docker til at bruge disse reserverede IP-numre til dels sit standard
docker0
bridge netværk og dels sine interne netværk ved at indsætte følgende i/etc/docker/daemon.json
filen:{ "bip": "10.14.0.1/17", "ipv6": false, "default-address-pools": [ {"base": "10.14.128.0/17", "size": 24} ] }
Hvis kommandoen
netstat -rnv
viser et eller flere netværk i172.16.0.0/12
intervallet idestination
kolonnen, så gør brug af nedenstående kommandoer for at stoppe Dockers brug af dette/disse netværk, efter at have lavet ovenstående konfigurationsændring.Shell-kommandoer Beskrivelser docker network ls
For at se Docker netværk docker network prune
For at slette ubrugte Docker netværk, herunder 172.16.0.0/12 netværk docker network ls
For at kontrollere, at de ubrugte Docker netværk er væk docker ps -a
For at liste Docker containere docker stop <container> ...
For at stoppe de angivne Docker containere docker stop $(docker container ls -aq)
For at stoppe ALLE Docker containere docker rm <container> ...
For at slette de angivne Docker containere docker container prune
For at slette ALLE stoppede Docker containere docker-compose up
Start services baseret på flere Docker containere, baseret på indholdet af en docker-compose.yml
filReboot eventuelt computeren/serveren for at sikre, at ændringerne fortsat virker efter en reboot.
-
+
Docker på Windows 10
Docker kan også bruges på blandt andet Windows 10, hvor Docker kan installeres ved at følge vejledningerne på denne URL:
https://docs.docker.com/docker-for-windows/install/
For at rette Docker konfigurationen på Windows 10 skal man også tilrette
daemon.conf
, som ligger iC:\Users\%userprofile%\.docker
Docker konfigrationen ser sandsynligvis sådan her ud uden rettelser:
{ "registry-mirrors": [], "insecure-registries": [], "debug": true, "experimental": false }
Efter tilrettelse bør den så se sådan ud:
{ "registry-mirrors": [], "insecure-registries": [], "debug": true, "experimental": false, "bip": "10.14.0.1/17", "ipv6": false, "default-address-pools": [ {"base": "10.14.128.0/17", "size": 24} ] }
Det bør også tilrettes i Docker Desktop, som vist her, hvorefter der skal genstartes:
Afprøv konfiguration ved at køre denne Docker container, "
docker run --rm busybox ifconfig
", hvilket skal give et resultat a la dette: