Docker 1주차

Lee1231234·2022년 8월 16일
0

도커?

원하는 프로그램을 쉽게 실행하기 위한 플랫폼

도커의 구성요소

  • docker image & container
    이미지는 어플리케이션을 실행하기 위한 필요한 모든 것이 생성되어 있는 파일.
    컨테이너는 이미지를 사용하여 실행한것. 프로세스의 독립성을 보장하기위해서 저장소또는 네트워크가 분리되어있음.

  • docker Registry
    docker image를 저장하는공간

  • dockerd
    docker API requests를 받아서 docker object(이미지,컨테이너 등)를 관리

  • docker client
    사용자가 docker를 사용하기 위해서 사용하는 cli

이전에는 VM(가상머신)이 도커와 비슷한 역할을 했음.
VM에서는 HyperVisor를 통해 여러개의 운영체제를 하나의 호스트에서 생성하고 개별 OS를 따로 두었기 때문에 성능소비가 심하고 이미지 크기가 큼

Docker에서는 리눅스 자체 기능을 사용하여 프로세스 단위의 격리 환경을 만들어 손실이 거의없음. 또한 OS를 개별적으로 사용하는것이 아니라 이미지 크기가 크지 않음.

  • docker 실행방법
    docker run [options] {image_name} [command] 형태
    docker ps -> 컨테이너의 상태 확인

  • 컨테이너 멈추기
    docker stop {container_id|conatinaer_name}
    docker kill {container_id|conatinaer_name}

  • 컨테이너 되살리기
    docker restart {container_id|container_name}

  • 실행중인 컨테이너에 명령어 실행
    docker exec [options] {container_id|container_name} [command]
    쉘 스크립트 사용시
    -it sh를 붙인다.

  • 컨테이너 삭제
    docker rm {container_id}

  • Dockerfile
    Docker image를 어떻게 생성할지 정의한 파일

  • imgage build
    docker build [OPTIONS] PATH
    옵션은 여러가지가 있음.
    만약 옵션에 -t를 준다면 repository와 tag 이름을 달수있음.
    ex)docker build -t docker-memo:version1 .
    docker-memo라는 리포지토리 이름과 version1이라는 태그를 가짐.
    이미지 목록 확인 -> docker images

  • 이미지를 docker hub에서 pull push하는 방법.
    docker login -> 먼저 hub에 접속해야함.
    docker push lee1231234/docker-memo:version1 가진 img를 밀어넣는다.
    docker pull lee1231234/docker-memo:version1 올라간 img를 끌고온다.

profile
not null

0개의 댓글