Docker - 네트워크

Levi·2022년 7월 31일
0

Docker & Kubernetes

목록 보기
5/6

이미지 및 내용 출처 : [Fastcampus]한 번에 끝내는 AWS 인프라 구축과 DevOps 운영 초격차 패키지 Online.

Docker 네트워크 구조

Docker 컨테이너 포트

$ docker run -p [HOST IP:PORT]:[CONTAINER PORT][container]
ex)
$ docker run -d -p 80:80 nginx
: 컨테이너의 80번 포트를 호스트 모든 IP의 80번 포트와 연결하여 실행
$ docker run -d -p 127.0.0.1:80:80 nginx
: 컨테이너의 80번 포트를 호스트 127.0.0.1 IP의 80번 포트와 연결하여 실행
$ docker run -d -p 80 nginx
: 컨테이너의 80번 포트를 호스트의 사용 가능한 포트(random)와 연결하여 실행

Expose vs Publish 옵션
$ docker run -d --expose 80 nginx : expose 옵션은 그저 문서화 용도
$ docker run -d -p 80 nginx : publish 옵션은 실제 포트를 바인딩

Docker Network

  • 네트워크 드라이버 종류

  • single : 단일 호스트 서버 동작
  • multi : 다중 컨테이너 상에서 orchestration을 위해 사용 ex) docker swarm..

헉헉.. 점점 이해하기 힘들어진다..

  • none network
    docker run -i -t --net none [container]
    ➡️ container 네트워크 설정이 필요없거나 커스텀 드라이버 설정 시 사용
  • host network
    docker run -d --network=host [container]
    ➡️ docker 제공 네트워크가 아닌 호스트의 네트워크 사용
  • bridge network
    docker network create --driver=bridge [network-name] : 기본 docker0 이 아닌 user-defined bridge network 생성
    docker run -d --network=[network-name] --net-alias=[domain-name][container] : user-defined bridge network 와 연결된 컨테이너 생성

** ifconfig 명령어를 통해 네트워크 확인 가능

profile
Jr.

0개의 댓글

관련 채용 정보