1. 이미지 (Image)
설명
- 애플리케이션과 그 실행에 필요한 환경(코드, 라이브러리, 의존성 등)을 포함한 읽기 전용 템플릿이다.
- 특정 애플리케이션이 동작할 수 있는 환경을 미리 구축해둔 상태로, 이를 기반으로 컨테이너를 생성한다.
- 예시)
ubuntu:latest
(우분투 최신 버전의 이미지)
명령어
docker pull {이미지명} // 도커 허브에서 이미지 다운로드
docker images // 이미지 목록 보기
docker rmi {이미지명} // 이미지 삭제
2. 컨테이너 (Container)
설명
- 이미지를 기반으로 생성된 애플리케이션의 실행 인스턴스이다.
- 컨테이너는 애플리케이션이 격리된 환경으로 실행될 수 있도록 한다.
- 각 컨테이너는 독립된 파일 시스템, 네트워크, 프로세스를 가지며 호스트와 격리된 상태로 실행된다.
명령어
docker run -d -p 8080:80 nginx // Nginx 컨테이너를 백그라운드에서 실행하고, 포트 8080을 80 포트에 연결
docker run {이미지명} // 컨테이너 실행
docker ps // 실행 중인 컨테이너 목록 보기
docker stop {컨테이너 ID} // 컨테이너 중지
docker rm {컨테이너 ID} // 컨테이너 삭제
3. 도커파일 (Dockerfile)
설명
- 도커 이미지를 생성하기 위해 사용하는 텍스트 기반 스크립트 파일이다.
- 이미지 빌드 시 각 단계에서 수행해야할 작업을 정의한다.
- 베이스 이미지, 패키지 설치, 파일 복사, 명령어 실행 등
예시