Aloha,
mal wieder was zu docker, dieses mal mit gerouteten public subnetzen (weil’s geht)
umgebungs dingends
- ubuntu 14.04 oder 16.04
- docker 1.11.1
- docker-compose
in die /etc/network/interfaces ein neues virtuelles device (oder hinter einer bridge, macht keinen unterschied)
auto eth0:1 iface eth0:1 inet static address xyz.10.abc.def netmask 255.255.255.248 broadcast xyz.10.abc.def
nun noch die docker-compose.yml
version: '2' services: nginx: image: nginx:latest restart: always ports: - "443:443" networks: - docker-subnet-1 networks: docker-subnet-1: driver: bridge driver_opts: com.docker.network.bridge.host_binding_ipv4: "xyz.10.abc.def" com.docker.network.bridge.enable_ip_masquerade: "true" com.docker.network.bridge.enable_icc: "true"
was das macht:
1) erstellt eine neues bridge interface
2) gibt diesem bridge interface ein privates 172.x/16 subnetz (normalerweise ein subnetz weiter als docker0)
3) legt alles was an dem „docker-subnetz-1“ hängt dahinter als wäre es eine normale docker installation (mit eigenen docker iptables etc)