• docker개요
    • 애플리케이션을 개발, 배포, 실행을 용이하게 하는 오픈 소스 플랫폼

    • 컨테이너

      • Docker는 소프트웨어를 컨테이너라는 표준화된 유닛으로 패키징
      • 컨테이너에는 라이브러리, 시스템 도구, 코드 등 소프트웨어를 실행하기 위한 모든 것이 포함
      • 도커 컨테이너 실행 명령어
        • docker run -d -p 8080:80 nginx
    • 가상화 서버인 VM과의 비교

      Untitled

      • 도커는 VM에 비해 HOST의 OS를 공유하는 컨테이너
        • 윈도우와 같이 리눅스환경과 다를경우 경량화된 OS를 설치하여 실행
        • 일반적으로 경량화 alpine리눅스 사용
      • VM에 비해 경량화된 가상화 서버로서 빠른 부팅속도와 더 나은 성능을 보임
  • docker의 주요요소
    • 도커 이미지(Image)

      image.png

      • 애플리케이션과 모든 필요한 설정을 포함하는 불변의 템플릿
      • 도커는 image 기반으로 동작
      • image란 컨테이너를 실행하기 위한 압축파일과 같은 개념
      • 도커 이미지 pull 명령어
        • ex)docker pull nginx
    • 컨테이너(Container)

      • 도커가 도커이미지를 통해 애플리케이션을 실행한 공간
    • 도커 데몬(Daemon)

      • 이미지, 컨테이너, 네트워크 등의 관리를 담당
      • 쉽게 생각해 도커 프로그램 그 자체로서, 도커 사용을 위해 먼저 설치필요
    • 도커 허브(Docker Hub)

      • 다양한 도커 이미지를 찾고 공유할 수 있는 저장소
    • 도커파일

      • Dockerfile은 Docker 이미지를 빌드하기 위한 명령어와 설정을 포함하는 텍스트 파일