Docker 도커 - 컨테이너

W·2024년 2월 29일
0

BackEnd & Devops

목록 보기
10/13

Ref.
도커 기초 강의
도커 컨테이너 통신하기

정의

  • OS상의 논리적인 영역
  • 애플리케이션이 작동하는데 필요한 요소들을 모아서 별도의 서버처럼 동작하는 것.
  • 필요한 요소만으로 구성되어 있어 오버헤드가 적음
  • 리눅스 환경을 기반으로 하기 때문에 우리가 뭐 맥OS에서 윈도우OS를 사용하기 위해서 사용한다 이런 의미가 아님. 우선 리눅스 환경이 아닌 곳에서 리눅스 의 애플리케이션들을 가공하기 위한 기술이라는 것을 우선 전제로 깔고서 진행을 해야한다.

VM과 다른점

VM은 OS자체를 세팅하는 느낌이고 Docker는 환경만 설정하는 느낌

컨테이너 구조

컨테이너 레이어(계층)와 이미지 레이어(계층) 으로 구성되어 있다.

컨테이너 끼리는 서로 공유하지 않는 계층이다.
이미지 레이어는 서로 다른 컨테이너 끼리 공유 가능하다. (이미지 레이어는 중복해서 사용 가능)

이미지 레이어를 공유함으로써의 장점

  • 용량 감소
  • 동일한 퍼포먼스를 낼 수 있다.

도커 명령어 구조

  • 도커의 모든 명령은 ‘docker’로 시작하고 어떤 대상에게 명령어를 실행할 것인가임

커맨드 (Command)

  • 커맨드 종류
docker
// 이렇게 치면 command list가 나온다.
  • ex) attach 커맨드에 대한 사용법을 알고 싶다.
docker attach --help

주요 쓰이는 커맨드

  • docker container
  • docker image
  • 공통 옵션

컨테이너와의 통신

기본적으로 독립적인 환경에서 실행되기 때문에 컨테이너 밖에서 접근할 수 없다.

  • -p 옵션을 주지 않으면 기본적으로는 안된다.
  • 컨테이너를 가동시킬때 -p옵션을 사용하고 호스트의 포트와 컨테이너의 포트를 설정해야 한다.
    • 호스트와 컨테이너의 포트가 겹치지 않아야 한다.
    • ex) -p [host port]:[container port]
  • 컨테이너 다 사용 후 중지 and 삭제
profile
타협하는 순간 발전이 없어

0개의 댓글