docker

About_work·2023년 11월 30일
0

딥러닝 환경 구축

목록 보기
22/23
  • 도커 이미지는 도커 컨테이너를 생성하는 데 사용되는 불변(immutable)의 템플릿
  • 도커 이미지는 소프트웨어를 실행하는 데 필요한 모든 것을 포함하고 있습니다—코드나 런타임, 라이브러리, 환경 변수, 설정 파일 등이 이에 포함
  • 도커 이미지는 일반적으로 여러 계층(layer)으로 구성되어 있으며, 이는 효율적인 저장과 전송을 가능하게 함

1. 도커 이미지의 개념

  • 불변성: 이미지는 생성 후 변경되지 않습니다. 컨테이너를 시작할 때마다 동일한 이미지에서 시작하면 항상 동일한 환경에서 시작하는 것이 보장됩니다.
  • 계층화:
    • 이미지는 여러 계층으로 구성될 수 있으며, 각 계층은 변경 사항을 나타냄
    • 이를 통해 재사용과 효율성이 증가
    • 예를 들어, 하나의 기본 이미지 위에 애플리케이션의 특정 변경사항만을 적용한 새로운 이미지를 만들 수 있음
  • 이식성: 이미지는 어느 도커 환경에서나 동일하게 실행될 수 있습니다. 이는 "한 번 구성하면 어디서나 실행된다(Write Once, Run Anywhere)"를 가능하게 합니다.

2. 도커 이미지 사용 목적 및 적용 사례

  1. 개발 환경 일관성:
  • 개발자는 동일한 이미지를 사용하여 로컬 머신, 테스트 서버, 프로덕션 환경에서 동일한 애플리케이션을 실행할 수 있습니다.
  • 이는 환경 설정 차이로 인한 문제를 방지합니다.
  1. 배포 용이성:
  • 도커 이미지는 클라우드 서버, 개인 데이터 센터, 심지어 개인 노트북에서도 쉽게 배포할 수 있음
  • 이미지는 모든 의존성을 포함하고 있기 때문에, 복잡한 설치 과정 없이도 소프트웨어를 실행할 수 있음
  1. 마이크로서비스 아키텍처:
  • 마이크로서비스 아키텍처에서 각 마이크로서비스는 독립적으로 배포되고 관리될 수 있음
  • 도커 이미지는 각 서비스의 의존성을 캡슐화하고 서로 독립적으로 실행될 수 있게 해줌
  1. 확장성 및 관리:
  • 도커를 사용하면 애플리케이션의 확장과 관리가 훨씬 쉬워집니다. 새로운 인스턴스를 쉽게 추가하고, 부하 분산을 위해 여러 컨테이너 인스턴스를 자동으로 조정할 수 있습니다.
  1. 보안:
  • 각 컨테이너는 격리된 환경에서 실행됩니다.
  • 이는 보안성을 강화하며, 하나의 컨테이너에 문제가 생겨도 다른 컨테이너에는 영향을 미치지 않습니다.
profile
새로운 것이 들어오면 이미 있는 것과 충돌을 시도하라.

0개의 댓글