1. 도커란?
도커(Docker)는 애플리케이션을 컨테이너라는 격리된 환경에서 실행할 수 있도록 해주는 플랫폼입니다. 컨테이너는 애플리케이션과 그에 필요한 모든 종속성을 포함하여, 일관된 실행 환경을 제공합니다.
2. 주요 구성 요소
컨테이너: 애플리케이션과 그 실행에 필요한 모든 파일 및 설정을 격리된 환경에서 실행하는 단위입니다. 서로 독립적으로 실행되며, 가볍고 빠릅니다.
이미지: 컨테이너를 생성하기 위한 템플릿입니다. 애플리케이션 코드, 라이브러리, 환경 변수 등을 포함하고 있습니다. 이미지는 변경 불가능하며, 여러 컨테이너에서 공유될 수 있습니다.
도커 엔진: 도커의 핵심 구성 요소로, 컨테이너를 관리하고 실행하는 역할을 합니다. 클라이언트-서버 구조로 되어 있습니다.
도커 허브: 도커 이미지의 클라우드 기반 저장소입니다. 사용자들은 이미지를 다운로드하거나 공유할 수 있습니다.
3. 도커의 장점
이식성: 동일한 환경에서 실행되므로 개발, 테스트, 프로덕션 환경 간의 차이를 줄일 수 있습니다.
경량화: 가상 머신보다 훨씬 가볍고 빠르게 실행됩니다.
빠른 시작 시간: 컨테이너는 몇 초 내에 시작할 수 있어, 애플리케이션의 배포와 스케일링이 용이합니다.
버전 관리: 이미지 버전을 쉽게 관리할 수 있어, 특정 버전으로 롤백하거나 새로운 이미지를 쉽게 배포할 수 있습니다.
4. 기본 명령어
도커 설치 확인:
bash
docker --version
이미지 다운로드:
bash
docker pull <이미지 이름>
예: docker pull ubuntu
컨테이너 실행:
bash
docker run -it <이미지 이름>
예: docker run -it ubuntu
실행 중인 컨테이너 확인:
bash
docker ps
컨테이너 중지:
bash
docker stop <컨테이너 ID>
컨테이너 삭제:
bash
docker rm <컨테이너 ID>
5. 실습 예제
도커 설치 후, Ubuntu 이미지를 다운로드하고 실행하기:
bash
docker pull ubuntu
docker run -it ubuntu
컨테이너 내에서 간단한 명령어 실행하기:
컨테이너에 접속한 후, apt-get update와 같은 명령어를 실행하여 패키지 목록을 업데이트합니다.