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

 

  • 공식 이미지의 경우, 네임스페이스가 없음
    • ubuntu:18.04
    • node:alpine

 

 

 

[출처] 데이터 엔지니어링 데브코스