터칭 데이터

Docker 정리 본문

Docker & K8S

Docker 정리

터칭 데이터 2023. 12. 21. 23:05

 

 

 

 

 

 

앞서 배운 Docker에 대해서 정리를 해보자

 

 

 

 

 

 

 

 

 

Docker 관련 용어들

 

Docker Image

Dockerfile

 

Docker Container

 

Docker Hub (hub.docker.com)

 

Docker Compose

다수의 Docker Container들을 관리
docker-compose.yml

    - Services
    - Networks
    - Volumes: host/anonymous/named volumes

 

 

 

 

 

 

 

 

 

 

 

Docker를 실제 Production 환경에서 사용할 때 유념할 점

 

Docker volumes

Host volume은 보통 개발시 소스코드를 바로 container안으로 마운트하기 위함 (터미널을 2개 띄우고 한쪽은 호스트 파일 시스템으로 코드를 작성하고 다른 터미널에서 결과를 바로 조회하는 식으로 사용)
Production에서는 named volumes를 써야함

 

Docker container는 read-only로 사용

내용을 바꿔야한다면 실행 중인 컨테이너를 수정하지 말 것
항상 이미지를 새로 빌드하고 다시 컨테이너들을 새로 론치
자동화가 중요해짐: CI/CD 프로세스

 

다수의 Docker Container들을 다수의 호스트들에서 실행 필요

용량 문제와 Fail-over (혹은 fail-tolerant)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Docker를 개인 생산성을 향상을 위해서 사용

개발시 필요한 모듈을 Docker 이미지로 받아와서 Container로 실행

여러 소프트웨어를 연동해서 개발시 이 것들을 docker-compose로 설정

장점:

일관된 방식으로 소프트웨어 설치 (문서화하고 매뉴얼하게 설치 불필요)

분리된 충돌 없는 환경에서 소프트웨어 설치/실행

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

누가 Docker를 시작했을까?

 

처음 시작은 2007년에 Solomon Hykes가 dotCloud라는 회사에서 시작

 

2010년 Y Combinator 여름 코호트에서 Kamel Founadi, Solomon Hykes, Sebastien Pahl이 시작하여 2011년 론치

 

2013년에 PyCon에서 오픈소스로 발표함

 

이때만 해도 Linux Containers라고 부름

 

2013년 회사 이름을 Docker로 바꿈

 

 

 

 

 

'Docker & K8S' 카테고리의 다른 글

Container Orchestration 소개  (0) 2023.12.21
서버 관리의 어려움  (0) 2023.12.21
Airflow Docker docker-compose.yml 리뷰  (0) 2023.12.21
voting application의 docker-compose.yml 개선하기  (0) 2023.12.21
10주차 - 4 [Docker & K8S]  (0) 2023.12.21