[Docker] 이미지와 컨테이너

2022. 12. 13. 16:59·개발/Docker
728x90
반응형

1. 이미지란?

이미지는 템플릿, 컨테이너의 청사진이다.

이미지는 실제로 코드와 코드를 실행하는데 필요한 도구를 포함한다.

그 다음 컨테이너가 실행되어 코드를 실행한다.

 

이미지를 기반으로 여러 컨테이너를 만들수 있다.

예를 들어 NodeJS 웹 서버 애플리케이션의 경우

한번만 정의하면 다른 시스템과 다른 서버에서 여러번 실행할 수 있다.

컨테이너는 그러한 이미지의 구체적인 실행 인스턴스이다.

 

즉, 이미지는 블루프린트이고 템플릿은 코드와 애플리케이션을 포함하며 컨테이너는 실행 애플리케이션이 된다.

2. 컨테이너 생성

로컬에 노드 이미지가 없다면 도커허브에서 자동으로 다운받는다.

docker run node

기본적으로 컨테이너는 주변 환경과 격리되어 있으며 컨테이너 내부에서 실행중인 인터렉티브 쉘이 있다고 해서

이 쉘이 사용자인 우리에게 노출된다는 의미는 아니다.

3. 프로세스 표시

모든 프로세스표시

docker ps -a

해당 이미지의 내용을 확인할 수 있다.

 

도커에게 컨테이너 내부에서 호스팅 머신으로 대화형 세션을 노출하고 싶다고 알리기

docker run -it node

이러면 노드 콘솔창을 띄울수 있다.

 

다시 프로세스를 표시해보면

docker ps -a

동일한 이미지를 기반으로 하는 컨테이너가 2개 나온다.

두 컨테이너는 동일한 이미지를 기반으로 한다.

더이상 실행되지 않지만 동일한 이미지를 기반으로 하는 2개의 컨테이너가 동시에 실행될수 있음을 알수 있다.

 

결국 이미지에는 코드, 설정, 여러것들이 포함되며 컨테이너는 그 이미지의 실행 인스턴스이다.

 

4. 도커 아키텍처

728x90
반응형

'개발 > Docker' 카테고리의 다른 글

[Docker] 도커 마운트 경로 오류  (0) 2022.12.14
[Docker] DockerHub 사용하기  (0) 2022.12.13
[Docker] Docker 명령어  (2) 2022.12.13
[Docker] Dockerfile  (0) 2022.12.13
[Docker] 도커의 개념  (0) 2022.12.13
'개발/Docker' 카테고리의 다른 글
  • [Docker] DockerHub 사용하기
  • [Docker] Docker 명령어
  • [Docker] Dockerfile
  • [Docker] 도커의 개념
TeTedo.
TeTedo.
  • TeTedo.
    TeTedo 개발 일기
    TeTedo.
  • 전체
    오늘
    어제
    • 분류 전체보기 (319)
      • 개발 (274)
        • Article (4)
        • 정리 (21)
        • Spring Boot (17)
        • JPA (2)
        • JAVA (6)
        • Database (4)
        • 자료구조 (11)
        • 알고리즘 (32)
        • React (20)
        • Docker (10)
        • node.js (18)
        • Devops (11)
        • Linux (4)
        • TypeScript (3)
        • Go (10)
        • HyperLedger (4)
        • BlockChain (43)
        • html, css, js (48)
        • CS (3)
        • AWS (3)
      • 모아두고 나중에 쓰기 (3)
      • 팀프로젝트 (18)
        • SNS(키보드워리어) (9)
        • close_sea (9)
      • 개인프로젝트 (1)
        • Around Flavor (1)
        • CHAM (13)
        • ethFruitShop (5)
      • 독서 (0)
        • 스프링부트와 AWS로 혼자 구현하는 웹 서비스 (0)
  • 블로그 메뉴

    • 홈
    • 개발일기
    • CS
    • 실습
    • 코딩테스트
    • 웹
    • Go
    • node.js
    • 팀플
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    명령어
    블록체인
    컨테이너
    nodejs
    도커
    30일챌린지
    go언어
    node.js
    node
    프로그래머스
    go
    React
    CSS
    html
    하이퍼레저
    js
    ERC721
    erc20
    mysql
    30일 챌린지
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
TeTedo.
[Docker] 이미지와 컨테이너
상단으로

티스토리툴바