나는매일가운데

Docker(2) - 도커 이미지 생성 및 도커 레지스트리 본문

Docker & Kubernetes/Docker

Docker(2) - 도커 이미지 생성 및 도커 레지스트리

전로찡 2023. 5. 1. 14:31
반응형

IaC = Infrastructure as Code

 - Infrastructuref를 코드로 정의하고 자동화 하는 것

 - 즉, 서버, 네트워크, 스토리지 등의 인프라스트럭처를 코드로 작성하여 버전 관리 시스템을 통해 관리하고, 자동화된 프로세스를 통해 인프라스트럭처를 생성, 배포 및 관리하는 것

 - 핵심 : 인프라스트럭처를 코드로 정의하고, 소스코드와 같은 방식으로 관리하는 것

 - 장점 

  • 수동으로 설정하는 것보다 일관성이 있다
  • 클라우드 컴퓨팅과 같은 동적 인프라스트럭처에서 유용 => 확장 축소, 재사용성 등 유지보수성 증가

 

쓰레드는 타이머를 기반으로 만들어짐 => 쓰레드 생성 시 타이머를 설정 하면 꼬일 가능성이 높다

 

1. 컨테이너로 이미지 만들기 (Commit & DockerFile build)

(1) Commit

  • docker commit이란?
    • Docker 컨테이너의 변경 사항을 새로운 이미지로 만들 때 사용
    • 간단한 방법이지만 Dockerfile과 같은 기능을 제공하지 않기 때문에 복잡한 이미지는 빌드하지 못한다.
  • 실습(1)
(1) 컨테이너 생성
docker container run --name apa000ex22 -d -p 8092:80 httpd

(2) 이미지 생성 (commit)
commit apa000ex22 ex22_original

(3) 생성된 이미지 확인
docker images

실습 결과 새로 생성된 이미지로 container 구성 및 실행

 

  • Docker file build
    • Docker 이미지를 생성하기 위한 설정 파일
    • 컨테이너 이미지를 생성하는 데 필요한 모든 단계를 포함
    • 이미지 생성을 자동화하고, 버전 관리 및 공유가 용이, 도커의 이식성 향상
    • 여러개의 컨테이너, 네트워크, 볼륨등을 같이 엮을 때 유리 => 도커 파일에 명시적으로 선언해 주었기 때문
    • 즉, 도커 이미지 작성을 위한 스크립트 파일

  • 실습


 

  • 도커 허브 & 도커 레지스트리 
    • 도커 레지스트리 (Docker Registry) :
      1. 이미지를 저장하고 검색할 수 있는 등기소...?? => 일반적으로 Stroage개념과 다르다
      2. 이미지의 버전 관리 및 분배 가능
      3. 이미지에 대한 메타데이터와 이미지 자체를 저장한다 / Docker Hub (Docker Registry), Private Docker Registry(이미지에 접근하는 사용자를 제한할 수 있다.)

 

 


 

2. Docker Compose

  • 도커 컴포즈란?
    • 시스템 구축과 관련된 명령어를 하나의 텍스트 파일(정의 파일)에 기재해 명령어 한번에 시스템 전체를 실행하고 종료와 폐기까지 한번에 하도록 도와주는 도구
    • 정의 파일을 만들어 여러 개의 컨테이너를 관리하고 실행하는 데 사용
    • 생성된 이미지를 기반으로 여러 컨테이너를 동시에 실행하며, 컨테이너 간 서로 통신할 수 있도록 네트워크를 설정 => 각 컨테이너의 이미지 및 구성을 설정하는 파일이 포함
    • Docker File : 컨테이너의 이미지를 빌드
    • Docker Compose : Docker 컨테이너를 실행하고 관리하기 위한 YAML파일
    • Up : 도커 컴포즈 실행 커맨드
    • down : 도커 컴포즈 정지 및 삭제 커맨드

 

 

반응형

'Docker & Kubernetes > Docker' 카테고리의 다른 글

Docker (1) - Docker 사용하기  (0) 2023.04.28
Docker (1) docker 기본  (1) 2023.04.13