[도커] 도커 12: 포트 포워딩, 컨테이너 외부 노출

2024. 11. 22. 00:35·클라우드/도커

직전에 알아본 도커 컴포즈 중, 포트 포워딩이라는 단어가 나왔다.

이번 시간에는 포트 포워딩이 뭔지 알아보자


외부 노출?

컴퓨터에 돌아가는 프로그램(=컨테이너, 웹 브라우저, …) 를 외부에(=네트워크에) 노출시키자
 
ex)
현재 컴퓨터는 네트워크에 연결되어 있음 ➔ 웹 브라우저 프로그램 실행 시 네트워크에 연결된다
= 웹 브라우저 프로그램은 네트워크에 노출되어 있다
 

🙋‍♀️ 외부 노출하는 방법

네트워크에서 해당 프로그램을 찾아갈 수 있다면 외부 노출 가능 
네트워크에서 해당 프로그램을 찾아가기 위해, 네트워크에서 유일하게 해당 프로그램을 구분할 주소 필요
➔ IP주소 (컴퓨터) + 포트주소 (컴퓨터 속 수많은 프로그램 중 하나)

 

🙋‍♀️ IP주소?

- 네트워크 상 컴퓨터를 구분하기 위한 주소
- 하나의 컴퓨터라 하더라도, 심지어 계속 같은 자리에 있어도 IP주소는 바뀔 수 있다
- 미리 정해져서 나오는 주소가 아니라, 상황에 따라 상이하게 부여되는 논리적인 주소
- 사용자가 kt 등 인터넷 서비스를 가입하여 공유기를 산다면, 그 공유기가 하나의 IP주소를 갖고,
  공유기 범위에 있는 컴퓨터, 노트북, 핸드폰 등 장비에게 IP주소를 나누어 준다 (자세한 내용은 NAT참고)

 

🙋‍♀️ 포트 번호?

- 하나의 컴퓨터 장비 안에서 프로세스를 구분하기 위한 주소
- 만일 특정 프로세스에게 특정 포트 번호가 할당되어 있다면, 특정 번호의 포트가 열려있다고 표현
- 만일 하나의 IP주소를 갖는 컴퓨터에서 이 포트주소가 겹치면 충돌이 발생
- 용도에 따라 미리 정해져 있는 번호가 있으며, 예를 들어 80번의 경우 웹 서버와의 통신을 위한 포트 주소이다
    ex) 웹 브라우저 프로그램은 포트번호 80번호를 사용한다  
           ➔ 현재 웹 브라우저를 통해 사람들은 네트워크에 연결하여 웹 서버(ex: 네이버)와 통신 가능

 


컨테이너 외부 노출

 내 컴퓨터는 이미 와이파이 공유기를 통해 IP주소를 할당받았을 것이다
이때 포트번호를 하나 지정하면, 
네트워크에서 해당 컨테이너를 유일하게 찾아갈 수 있으므로 외부 노출 가능하다

🙋‍♀️문제

컨테이너는 호스트 컴퓨터 안에서 네트워크 가상화가 되어있다
➔ 호스트 (컴퓨터), 컨테이너의 포트는 서로 다른 네트워크 네임스페이스가 구축되어있다
호스트의 포트번호 80번, 컨테이너의 포트 번호 80번은 다르다

 

 

🙋‍♀️문제해결: 포트포워딩

컨테이너의 포트를 호스트 포트와 연결하면 된다!


다음 시간에는 도커 스웜을 알아보자

 

'클라우드 > 도커' 카테고리의 다른 글

[도커] 도커 13: 도커 스웜  (1) 2024.11.23
[도커] 도커 11: 도커 컴포즈 2  (0) 2024.11.21
[도커] 도커 10: 도커 컴포즈 1  (3) 2024.11.20
[도커] 도커 9: 도커 컨테이너 상세 조회 명령어 모음  (2) 2024.11.19
[도커] 도커 8: 도커 이미지 심화  (0) 2024.11.18
'클라우드/도커' 카테고리의 다른 글
  • [도커] 도커 13: 도커 스웜
  • [도커] 도커 11: 도커 컴포즈 2
  • [도커] 도커 10: 도커 컴포즈 1
  • [도커] 도커 9: 도커 컨테이너 상세 조회 명령어 모음
KyuminKim
KyuminKim
컴퓨터공학과 학생의 이모저모 개발 일지 📝
  • KyuminKim
    이모저모
    KyuminKim
  • 전체
    오늘
    어제
    • 분류 전체보기 (53)
      • 프로젝트 (2)
        • first-blog (2)
      • 클라우드 (22)
        • 도커 (14)
        • 쿠버네티스 (5)
        • AWS (2)
      • 알고리즘 (5)
        • 코드트리 (0)
        • 프로그래머스 (5)
      • 백엔드 (8)
      • 프론트엔드 (2)
      • 보안 (3)
        • 드림핵 (2)
      • python (3)
      • 네트워크 (1)
      • 기타 (6)
        • 2025 프로펙트 부트캠프(1차) | 클라우드 엔.. (0)
        • OSSCA | 2024 오픈소스 컨트리뷰션 아카데.. (0)
        • WIK (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    apiserver-runtime
    recover_your_data
    주간레포트
    urf8
    탈퇴구현
    DB
    character_set_server
    amazonlinux
    쿠버네티스
    코딩테스트
    도커
    코드트리조별과제
    MySQL
    코딩트리조별과제
    자료구조
    파이썬
    티스토리챌린지
    DP
    진단평가
    EC2
    2024 당근 테크 밋업
    고랭
    코드트리
    docker
    오블완
    인코딩
    도커파일
    characterencoding
    cannot send an empty message
    알고리즘
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.2
KyuminKim
[도커] 도커 12: 포트 포워딩, 컨테이너 외부 노출
상단으로

티스토리툴바