/ Server

Docker Default-Netzwerk ändern (Ubuntu 16.04 +)

In der Standard-Konfiguration verwendet Docker für Container den IP-Bereich 172.17.0.0/16. Unter Umständen kann es zu Konflikten mit lokalen Netzwerken kommen. Dann kann es wünschenswert sein das Docket-Default-Subnetz zu ändern.

Nachfolgende Anleitung beschreibt die für die Änderung notwendigen Schritte für Ubuntu-Systeme ab 16.04 mit Systemd.

  • Den Docker Service stoppen:
    sudo service docker stop
    
  • Alle Brücken abreißen:
    ip link set docker0 down
    brctl delbr docker0
    iptables -t nat -F
    
  • Eine Datei /lib/systemd/system/docker.service.d/bridge-ip-local.conf mit folgendem Inhalt anlegen:
    # See https://docs.docker.com/engine/admin/systemd/
    # Exec based on /lib/systemd/system/docker.service
    [Service]
    ExecStart=
    ExecStart=/usr/bin/dockerd --bip=172.16.1.1/24 -H fd://
    
  • Den Systemd neu laden
    sudo systemctl daemon-reload
    
  • Den Docker Service wieder starten
    sudo service docker start
    

Docker-Compose

Falls mit Docker-Compose Bridge-Netzwerke erstellt werden, kann es passieren, dass es auch zu Kollisionen und zu Routing-Problemen kommt. Um diese Probleme zu umgehen, kann die Netzwerk Adresse in docker-compose.yml oder docker-compose.override.yml vorgegeben werden:

networks:
  default:
    driver: bridge
    ipam:
      config:
        - subnet: 172.16.200.0/28
          gateway: 172.16.200.1

Wichtig: Es muss mit "docker networks" das nicht-gewünschte Bridge-Interface entfernt und der service "docker" neu gestartet werden.