docker-compose로 정적 IP가 더 이상 작동하지 않습니다.

Windows에서 docker Compose 버전이 2.0.0 beta3에서 발생합니다.

Use Docker Compose V2에 체크가 되어 있으면 docker-compose로 static IP가 효과가 없게 된다.



실제로 현상을 재현해 보았다.

docker-compose.yml
version: '3.7'
networks:
  test_net:
    driver: bridge
    ipam:
      driver: default
      config:
        - subnet: 192.168.200.0/24
services:
  web1:
    image: nginx:1.21.0
    networks:
      test_net:
        ipv4_address: 192.168.200.99
  web2:
    image: nginx:1.21.0
    networks:
      test_net:
        ipv4_address: 192.168.200.55

위의 docker-compose를 시작하고 "docker network inspect"로 내용을 보면. . .
[
    {
        "Name": "staticip_test_net",
・・・省略
        "Containers": {
            "a3ab1409bc037753f51d6a0e5f77418b0ffefca9e9ba8b909113fe473c6dba32": {
                "Name": "staticip_web2_1",
                "EndpointID": "f0d078ccc32079a014764c0165a0e5910afb4c6b6dcbc8fa10a0156823abf7fc",
                "MacAddress": "02:42:c0:a8:c8:03",
                "IPv4Address": "192.168.200.3/24",
                "IPv6Address": ""
            },
            "c5df265fe1ed684f62b0287da6d48a5cb40c98b78d40fce344734dc8805cb76b": {
                "Name": "staticip_web1_1",
                "EndpointID": "7d76f0ef4d4024fe2b5ed68c6534793b233333d90f0b7945f8b26ec696346946",
                "MacAddress": "02:42:c0:a8:c8:02",
                "IPv4Address": "192.168.200.2/24",
                "IPv6Address": ""
            }
        },
        "Options": {},
        "Labels": {
            "com.docker.compose.network": "test_net",
            "com.docker.compose.project": "staticip",
            "com.docker.compose.version": "1.0-alpha"
        }
    }
]


192.168.200.99와 192.168.200.55가 되지 않았다. 제대로 움직이게 하려면 , Use Docker Compose V2 에 체크를 해제하는 것이 정답이다. 언제 체크 넣었는지・・・

설정 후에 다시 docker-compose를 기동한 네트워크 구성은 아래와 같다.
[
    {
        "Name": "staticip_test_net",
・・・省略
        "Containers": {
            "6f00d4bb2e5ce7c458ec4f74b95fa86a48448eb691f36ce52612605307906c85": {
                "Name": "staticip_web2_1",
                "EndpointID": "8ba37672b74c698586cd83d3e19663ac99a276e51542243d366daf538aeb1e6d",
                "MacAddress": "02:42:c0:a8:c8:37",
                "IPv4Address": "192.168.200.55/24",
                "IPv6Address": ""
            },
            "b3a8fb91b2f7b6723aeedb3d0f3171a42077aeebe2ad8d15edb4c0ca30cf4f5b": {
                "Name": "staticip_web1_1",
                "EndpointID": "0e5023e90143f97ba6b50a6a98e4b8edc5cbc4dbf465a93f1afa7e71ca42f35d",
                "MacAddress": "02:42:c0:a8:c8:63",
                "IPv4Address": "192.168.200.99/24",
                "IPv6Address": ""
            }
        },
        "Options": {},
        "Labels": {
            "com.docker.compose.network": "test_net",
            "com.docker.compose.project": "staticip",
            "com.docker.compose.version": "1.29.2"
        }
    }
]

제대로 IP 주소가 지정되었습니다. 죄송합니다.

좋은 웹페이지 즐겨찾기