Docker Container Network 변경

EnoSoup·2021년 7월 23일
0

Docker

목록 보기
2/5
post-thumbnail

변경 방법

docker network 조회

$ docker network ls
NETWORK ID          NAME                DRIVER              SCOPE
143496b94e57        bridge              bridge              local
311d6534f79f        host                host                local
aa89f58200a6        none                null                local

docker network 생성

$ docker network create our-net
e6dfe4a9a5ec85abcb484662c30a3a0fc76df217dde76d52fac39fae8412ca68

$ docker network ls
NETWORK ID          NAME                DRIVER              SCOPE
143496b94e57        bridge              bridge              local
311d6534f79f        host                host                local
aa89f58200a6        none                null                local
e6dfe4a9a5ec        our-net             bridge              local

docker network 상세 정보 확인

$ docker network inspect our-net
[
    {
        "Name": "our-net",
        "Id": "e6dfe4a9a5ec85abcb484662c30a3a0fc76df217dde76d52fac39fae8412ca68",
        "Created": "2020-04-26T19:23:04.563643516Z",
        "Scope": "local",
        "Driver": "bridge",
        "EnableIPv6": false,
        "IPAM": {
            "Driver": "default",
            "Options": {},
            "Config": [
                {
                    "Subnet": "172.19.0.0/16",
                    "Gateway": "172.19.0.1"
                }
            ]
        },
        "Internal": false,
        "Attachable": false,
        "Ingress": false,
        "ConfigFrom": {
            "Network": ""
        },
        "ConfigOnly": false,
        "Containers": {},
        "Options": {},
        "Labels": {}
    }
]

Network Container 연결

$ docker run -itd --name one busybox
660bafdce2996378cde070dfd894731bb90745e46d2ab10d6504c0cc9f4bdea9

Network Container 연결내역 확인

$ docker network inspect bridge
(... 생략 ...)
        "Containers": {
            "660bafdce2996378cde070dfd894731bb90745e46d2ab10d6504c0cc9f4bdea9": {
                "Name": "one",
                "EndpointID": "40b4bbd8385debf86eef2fc2136315e1a82fa1ef72877bfae25477d6e8e46726",
                "MacAddress": "02:42:ac:11:00:04",
                "IPv4Address": "172.17.0.4/16",
                "IPv6Address": ""
            },
        },
(... 생략 ...)

our-net 네트워크에 one Container 연결 및 확인

$ docker network connect our-net one

$ docker network inspect our-net
[
    {
        "Name": "our-net",
        "Id": "e6dfe4a9a5ec85abcb484662c30a3a0fc76df217dde76d52fac39fae8412ca68",
        "Created": "2020-04-26T19:23:04.563643516Z",
        "Scope": "local",
        "Driver": "bridge",
        "EnableIPv6": false,
        "IPAM": {
            "Driver": "default",
            "Options": {},
            "Config": [
                {
                    "Subnet": "172.19.0.0/16",
                    "Gateway": "172.19.0.1"
                }
            ]
        },
        "Internal": false,
        "Attachable": false,
        "Ingress": false,
        "ConfigFrom": {
            "Network": ""
        },
        "ConfigOnly": false,
        "Containers": {
            "660bafdce2996378cde070dfd894731bb90745e46d2ab10d6504c0cc9f4bdea9": {
                "Name": "one",
                "EndpointID": "cc490148a533d40b3aff33a421cc9a01c731c75a8deb70ab729a5358f2fd381c",
                "MacAddress": "02:42:ac:13:00:02",
                "IPv4Address": "172.19.0.2/16",
                "IPv6Address": ""
            }
        },
        "Options": {},
        "Labels": {}
    }
]

Container 네트워크 연결 해제

$ docker network disconnect bridge one

Container 간 Networking 테스트

$ docker exec one ping two 또는 $ docker exec two ping 172.19.0.2
PING two (172.19.0.3): 56 data bytes
64 bytes from 172.19.0.3: seq=0 ttl=64 time=0.119 ms
64 bytes from 172.19.0.3: seq=1 ttl=64 time=0.105 ms
64 bytes from 172.19.0.3: seq=2 ttl=64 time=0.116 ms
64 bytes from 172.19.0.3: seq=3 ttl=64 time=0.883 ms
64 bytes from 172.19.0.3: seq=4 ttl=64 time=0.127 ms

our-net 제거

$ docker stop one
one

$ docker network rm our-net
our-net

docker Network 미사용 리소스 제거

$ docker network prune
WARNING! This will remove all networks not used by at least one container.
Are you sure you want to continue? [y/N] y
profile
Cloud Engineer@Plateer. 클라우드 상에서 엔지니어링을 재미있게 하는 엔지니어입니다.

0개의 댓글