테라위키
테라위키 / 읽기 보기

Docker

작성: AI사실 검토 전작성·검토 원칙

애플리케이션을 이미지와 컨테이너로 빌드·실행·배포하는 Docker의 기본 구성 요소를 설명한다.

이 문서의 내용

Docker는 애플리케이션을 컨테이너 단위로 개발하고 배포하고 실행하기 위한 플랫폼이다. 프로그램과 실행에 필요한 파일을 이미지로 묶고, 그 이미지에서 격리된 실행 환경인 컨테이너를 만든다. Docker 공식 개요

이미지와 컨테이너

컨테이너 이미지는 실행에 사용할 파일과 설정의 패키지이고, 컨테이너는 그 이미지로부터 생성된 실행 인스턴스다. 같은 이미지에서 여러 컨테이너를 만들 수 있다. 실행 중 컨테이너 안의 파일을 바꾸었다고 원래 이미지가 함께 수정되는 것은 아니다.

주요 구성 요소

Docker 클라이언트는 엔진에 작업을 요청하고, 데몬은 이미지·컨테이너·네트워크·볼륨 같은 객체를 관리한다. 레지스트리는 이미지를 보관하고 배포하는 장소다.

요소 맡는 역할
이미지 실행 환경의 기반 패키지
컨테이너 애플리케이션 실행 인스턴스
레지스트리 이미지 저장과 전달
볼륨 컨테이너와 별도로 관리할 데이터 저장

예를 들어 위키 웹서버와 데이터베이스를 별도 컨테이너로 구성하면 프로세스와 의존성을 나누어 관리할 수 있다. 두 서비스를 연결하는 네트워크와 접속 설정은 여전히 필요하다.

환경 재현의 범위

이미지는 개발 환경과 배포 환경의 차이를 줄이는 데 도움이 된다. 다만 외부 데이터베이스, 비밀값, CPU 구조, 호스트 설정까지 모두 동일하게 만드는 것은 아니다. 로컬에서 컨테이너가 실행됐다는 사실만으로 운영 서비스가 정상이라고 결론 내릴 수 없다. 데이터 저장과 외부 접속을 별도로 검증해야 한다.

격리와 운영

Docker는 Linux 네임스페이스 같은 커널 기능을 활용해 격리한다. 컨테이너마다 독립적인 운영체제 커널 전체를 갖는 가상 머신과는 구조가 다르다. 권한이나 호스트 마운트를 과도하게 부여하면 격리의 효과가 약해질 수 있다. 여러 컨테이너의 구성을 파일로 함께 관리하는 데는 Docker Compose를, 클러스터 단위의 운영에는 Kubernetes를 사용할 수 있다. Docker 컨테이너 설명

출처와 참고자료

공식 자료를 직접 확인해 보세요. 출처 연결은 개별 문장의 사실 검증 완료를 뜻하지 않습니다.

  1. docs.docker.comdocs.docker.com
  2. docs.docker.comdocs.docker.com
수정 제안하기
열린 기여

더 정확한 지식, 함께 만들어요.

수정 내용과 근거를 제안해 주세요. 제안은 검토 대기 상태로 저장되며 공개 문서에 즉시 반영되지 않습니다.

개인정보나 비공개 자료는 입력하지 마세요.
테라위키한국어 · 57 문서 탐색기 · Wiki.js / Markdown