data engineering/docker
[Docker] Image
nani-jin
2024. 5. 28. 18:25
[Docker의 목표]
개발 환경, 테스트 환경, 프로덕션 환경에서 소프트웨어를 일관되게 빌드하고 실행하고 배포하는 것
이를 가능하게 해주는 것이 Docker Image
= 애플리케이션과 그 애플리케이션이 실행되는 데 필요한 모든 것을 포함하는 일종의 패키지
1. Docker Image
- 구성 요소
- 기본 운영체제(linux - ubuntu, debian 등)와 같은 소프트웨어의 실행 환경
- 소프트웨어 자체(코드)
- 소프트웨어가 필요로 하는 라이브러리
- 파일 시스템 스냅샷 - 스택화된 형태로 구현
- 환경 설정 변수 - 빌드할 때 변수와 실행 떄 변수
- 메타 데이터 - 이미지 자체에 대한 정보 (버전, 작성자, 설명 등)
- 이름
- NAME - REPOSITORY:TAG로 구성됨
(예시) redis:13, keeyong/hello-world-docker:latest - IMAGE ID - Docker Image의 실제 ID. 유니크함
- TAG - 버전 정보 혹은 변형 정보를 나타냄. default = latest
(예시) docker tag hello-world-docker keeyong/hello-world-docker
- NAME - REPOSITORY:TAG로 구성됨
- 공식 이미지의 경우, 네임스페이스가 없음
- ubuntu:18.04
- node:alpine
[출처] 데이터 엔지니어링 데브코스