iNote

생각을 기록하면 오래 남습니다.

AI 어시스턴트

게스트님, 안녕하세요

무엇을 도와드릴까요?

  • 대화 기록이 없어요.

AI 어시스턴트

게스트님, 안녕하세요

무엇을 도와드릴까요?

  • 대화 기록이 없어요.
iNote
iNote
홈할 일일지독서나의 글글쓰기dev-guide

iNote

생각을 기록하면 오래 남습니다.

학습DevOps

Docker

서동찬 (sdc337dc@gmail.com)

생성일 : 2026.10.07 14:11 / 수정일 : 2026.10.07 15:34

  • Docker는 애플리케이션과 그 실행 환경을 컨테이너라는 표준화된 단위로 패키징해 어디서나 동일하게 동작하도록 해 주는 가상화 플랫폼이다.
  • Dockerfile은 “Python 3.11 설치, 라이브러리 설치, 코드 복사, 실행 명령”과 같은 포장 지침서를 텍스트 파일로 정의하고, 이를 기반으로 Image(읽기 전용 템플릿)를 만든다.
  • Image는 컨테이너를 실행할 때 사용되는 완성된 패키지이며, 컨테이너는 Image를 실제로 실행한 상태이며 여러 개를 동시에 띄울 수 있다.
  • Docker를 사용하면 환경 차이(파이썬 버전, 라이브러리 버전, OS 등)으로 인한 “내 컴퓨터는 되는데 서버는 안됨” 문제를 해결하고, 이식성·효율성·격리성이라는 장점을 얻는다.

1. Docker란?

  • 내 프로그램과 그게 돌아가는 환경을 통째로 포장한 상자

2. 실제로 발생 되는 문제 사항

  • 내 컴퓨터에서는 되는데 서버에서는 안됨.
    (개발에서 흔한이며, 원인은 대부분 환경 차이)

  1. python 버전이 다르다.

  2. 설치된 라이브러리 버전이 다르다.

  3. OS가 다르다.

3. 도커의 해결법

  • 프로그램 코드뿐만 아니라 파이썬, 라이브러리, 설정까지 한 묶음으로 포장하면 어디서 열어도 똑같이 동작함

  • 이삿짐 박스에 싸서 옮기는 것과 비슷함. (박스 안은 항상 같으므로...)

핵심 용어 3개

용어

비유

설명

Dockerfile

레시피

"Python 3.11 깔고, 이 라이브러리 설치하고, 이 코드 복사하고, 이 명령으로 실행" 같은 포장 지침서 (텍스트 파일)

Image

냉동 도시락

Dockerfile대로 만든 완성된 포장물. 읽기 전용이고, 실행 전 상태

Container

데워서 먹는 중인 도시락

Image를 실제로 실행한 것. 하나의 이미지로 컨테이너를 여러 개 띄울 수 있음

4. 흐름

Dockerfile → (build) → Image → (run) → Container


1. 도커

  • 애플리케이션을 컨테이너라는 표준화된 유닛으로 패키징하고 어디서나 실행할 수 있게 해주는 개방형 가상화 플랫폼.

2. 도커 핵심 개념

  1. 컨테이너 : 코드, 실행 파일, 라이브러리 등 실행에 필요한 모든 종속성을 하나로 묶은 격리된 공간.
    운영 치제 커널을 공유하므로 가볍고 빠르게 실행됨.

  2. 이미지 : 컨테이너를 만드는 데 사용하는 읽기 전용 템플릿. 프로그램의 청사진 역할을 한다.

3. 주요 장점

  • 이식성 : 내 컴퓨터에서는 되는데, 서버에서는 안되는 경우의 문제. -> 어디서나 동일하게 작동함

  • 효율성 : 가상 머신과 달리 별도의 운영체제를 통째로 띄우지 않아 자원 낭비가 적고 속도가 빠르다.

  • 격리성 : 앱마다 독립된 환경을 제공해 충돌을 막고 관리가 쉽다.

목차

  • 1. Docker란?
  • 2. 실제로 발생 되는 문제 사항
  • 3. 도커의 해결법
  • 핵심 용어 3개
  • 4. 흐름
  • 1. 도커
  • 2. 도커 핵심 개념
  • 3. 주요 장점