도커 컨테이너 기본 네트워크와 외부에 노출

mohadang·2022년 3월 13일
0

도커

목록 보기
5/26
post-thumbnail

컨테이너의 가상 IP 주소 할당

컨테이너는 가상 머신과 마찬가지로 가상 IP 주소를 할당 받는다.
기본적으로 도커는 컨테이너에 172.17.0.x의 IP를 순차적으로 할당한다.

# ifconfig
eth0      Link encap:Ethernet  HWaddr 02:42:ac:11:00:02
          inet addr:172.17.0.2  Bcast:172.17.255.255  Mask:255.255.0.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:22 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:2930 (2.9 KB)  TX bytes:0 (0.0 B)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

컨테이너를 외부에 노출

외부에 컨테이너의 애플리케이션을 노출하기 위해서는 eth0의 IP와 포트를 호스트의 IP와 포트에 바인딩 해야한다.
docker run 시 -p 80:80 옵션을 이용하여 바인딩 할 수 있다.
-p [호스트의 포트]:[컨테이너의 포트]

EX)

docker run -i -t --name mywebserver -p 80:80 ubuntu:14.04

# 호스트의 192.168.0.100 IP, 7777번 포트를 컨테이너의 80번 포트와 연결
# -p 옵션은 여러번 사용 가능
docker run -i -t --name mywebserver -p 3306:3306 -p 192.168.0.100:80:80 ubuntu:14.04

출처

  • 책 : 시작하세요 도커/쿠버네티스
profile
mohadang

0개의 댓글