将不同的IP分配给不同的Docker容器

时间:2016-09-07 15:12:52

标签: networking docker ip

我需要运行两个容器,每个容器包含一个特定(公共)IP上的脚本绑定(11.11.11.22和11.11.11.23)

泊坞主机本身位于10.10.10.222。

我有子网11.11.11.20/27,我的网关是11.11.11.21

如果重要,我的服务器在SoftLayer。

搬运工-compose.yml

version: '2'
services:
  nginx-0:
    image: nginx:1.10
    ports:
      - 11.11.11.22:80:80
    networks:
      app_net:
        ipv4_address: 11.11.11.22

  nginx-1:
    image: nginx:1.10
    ports:
      - 11.11.11.23:80:80
    networks:
      app_net:
        ipv4_address: 11.11.11.23

networks:
  app_net:
    driver: bridge
    ipam:
      driver: default
      config:
      - subnet: 11.11.11.20/27
        gateway: 11.11.11.21

ip a

3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
    inet 10.10.10.222/27 brd 10.10.10.223 scope global eth1
       valid_lft forever preferred_lft forever
    inet 11.11.11.22/32 brd 11.11.11.22 scope global eth1:0
       valid_lft forever preferred_lft forever
    inet 11.11.11.23/32 brd 11.11.11.23 scope global eth1:1
       valid_lft forever preferred_lft forever

ips内容 docker exec nginx-0 ip a

6: eth0@if7: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
    link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
    inet 11.11.11.22/27 scope global eth0
       valid_lft forever preferred_lft forever

如果我卷曲这两个IP,我会得到一个“curl:(52)来自服务器的空回复”

我的范围内的任何其他IP都将返回“无法连接...”

有没有解决办法呢?

提前致谢! 多米尼克

1 个答案:

答案 0 :(得分:1)

我明白了。

我不得不删除主机上的界面。

ipconfig eth0:0 down
ipconfig eth0:1 down

我也从 / etc / networking / interfaces

中删除了它