docker 정의,설치

alexhwang_·2021년 11월 24일
0

docker

목록 보기
1/1

도커 정의

도커는 2014년 6월 Docker 1.0 발표한 기술로 컨테이너 기반의 오픈소스 가상화 플랫폼이다. 백엔드 프로그램,데이터베이스, 메시지큐 등을 컨테이너로 추상화가 가능하다.

기존 가상화의 문제

기존 가상화 방식 -> os를 가상화

  • VMWare, VirtualBox (Host OS 위에 Guest OS 전체를 가상화)
  • 무겁고 느림

cpu의 가상화 기술 이용 방식 -> kernel-based Virtual Machine

  • 전체 OS를 가상화 하지 않음, 호스트 형식에 비해 속도 향상
  • OpenStack, AWS 등의 클라우드 서비스
  • 추가적인OS는 여전히 필요,성능 ㅇ문제

프로세스 격리 -> 리눅스 컨테이너

  • CPU나 메모리는 프로세스에 필요한 만큼만 추가로 사용
  • 성능 손실 거의 없음
  • 컨테이너들 사이느 서로 영향을 주지 않음
  • 컨테이너 생성 속도 빠름(1-2초 이내)

즉 이러한 기존 방식에 의해 도커는 도커 이미지를 통한 컨테이너 실행에 대해 상당한 편리성을 제공했습니다.

docker image를 통해 컨테이너 실행에 필요한 파일과 설정 값 등을 포함 해서
실체화 시킨것이 -> container 입니다.

Docker의 장점

docker Hub에 등록 or Docker Registry 저장소를 직접 만들어 관리

  • 공개된 도커 이미지는 50만개 이상, 다운로드 수는 80억회 이상

Dockerfile

  • Docker Image를 생성하기 위한 스크립트 파일
  • 자체 DSL(Domain-Specific Language)언어 사용 -> 이미지 생성과정 기술
    • 서버에 프로그램을 설치하는 과정을 메모장이 아닌 Dockerfile로 관리
    • 소스와 함께 버전 관리가 되며, 누구나 수정 가능
      ex)

docker 설치

docker for Mac/docker for windows or 직접 Linux에 설치

docker 설치 확인

$ docker version

docker 컨테이너 실행

$ docker run [OPTIONS] IMAGE[:TAG|@DIGEST][COMMAND][ARG..]

docker 기본 명령어

docker의 기본 명령어 리스트입니다.

  • docker ps 는 도커의 현재 run 상태인 컨테이너 리스트를 보여주는 명령어입니다.

  • docker stop 은 도커의 현재 run 상태인 컨테이너를 중지하는 명령어입니다.

  • docker rm 은 현재 도커의 중지된 컨테이너를 삭제하는 명령어입니다.
    *도커 컨테이너 삭제시 무조건 stop -> rm 명령어 순으로 진행해야 합니다.

  • docker images 는 현재 로컬에 생성되거나 다운로드 받은 이미지의 목록을 보여주는 명령어입니다.

  • docker rmi 는 현재 갖고있는 도커 이미지를 삭제하는 명령어입니다.

  • docker pull 은 다운로드 받을 도커 이미지를 dockerhub에서 가져올 때 사용하는 명령어입니다.

  • docker logs 는 현재 도커 컨테이너의 로그를 확인하는 명령어로 -f 명령어를 포함하면 마지막까지 진행되는 log를 확인할 수 있습니다.

  • docker exec 는 현재 실행중인 도커 컨테이너에 접속하는 명령어 입니다.

  • docker system prune사용하지 않은 도커 오브젝트 일괄 삭제 명령어입니다.

docker image 생성

도커 이미지 생성하는 과정은 다음과 같습니다.

도커 허브 올리는법

  1. Dockerfile 생성
    $ touch Dockerfile
  2. docker 빌드
    $ docker build -t alexhwang95/extest:1.0 .
    $ docker images
  3. dockerhub에 올리기
    $ docker push alexhwang95/extest:1.0

여기서 도커허브에 생성된 본인 계정에 빌드된 파일을 올리는 것을 뜻한다.

0개의 댓글