Programming/docker

Docker 요약 : 간단하게 정리하기

방황하는 데이터불도저 2023. 12. 7. 19:26

Docker란?
 - 컨테이너 기반의 가상화 플랫폼 (오픈소스)


Container(컨테이너)란?
 - 격리된 공간에서 프로세스가 동작하도록 하는 기술
 - 리눅스기반 컨테이너를 지원한다.

Image(이미지)란?
 - 컨테이너를 실행시키기 위한 파일들과 설정값들을 포함하고 있는 것
 - layer개념을 사용하여 저장되기 때문에, 효율적으로 저장할 수 있다.


도커 설치하는 방법

 - Linux : Install Docker Engine on Ubuntu
 - Desktop for Window, Desktop for Mac


도커 Command

 

컨테이너 
 - 설치 : docker run [OPTIONS] IMAGE[:TAG|@DIGEST] [COMMAND] [ARG...]
 - 목록 확인 : docker ps [OPTIONS]
 - 중지 : docker stop [OPTIONS] CONTAINER [CONTAINER...]
 - 제거 : docker rm [OPTIONS] CONTAINER [CONTAINER...]
 - 로그보기 : docker logs [OPTIONS] CONTAINER
 - 컨테이너 명령어 실행 : docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
 - 컨테이너 업데이트하는 방법 : 새 image (pull) → 기존 컨테이너 (stop, rm) → 새 컨테이너 (run)   

   * 호스트 디렉토리 마운트 추천

이미지
 - 목록 확인 : docker images [OPTIONS] [REPOSITORY[:TAG]]
 - 이미지 다운로드 : docker pull [OPTIONS] NAME[:TAG|@DIGEST]
 - 이미지 삭제하기 : docker rmi [OPTIONS] IMAGE [IMAGE...]

이미지 빌드하기
 - docker build [OPTIONS] PATH | URL | -


 

 

Dockerfile
 - 일반적인 소스파일들과 dockerfile을 통해 도커 이미지를 생성한다.
 - dockerfile로는 이미지 빌드용 DSL(Domain Specific Language)파일을 사용한다.
 - dockerfile이 있는 path에서 build 커맨드 실행시 image가 생성된다.

Dockerfile 명령어
 - FROM <image>:<tag>
 - MAINTAINER <name>
 - COPY <src>... <dest>
 - ADD <src>... <dest>
 - RUN <command>
 - CMD command param1 param2
 - WORKDIR /path/to/workdir
 - EXPOSE <port> [<port>...]
 - VOLUME ["/data"]
 - ENV <key> <value>

 

 

Docker Repository
 - 설치형 오픈소스 무료 이미지 저장소

Docker Hub
 - Docker Inc.에서 서비스하는 기본 이미지 저장소. 
 - 공식 이미지들이 저장되어 있다. 
 - 비공개 저장은 유료이다.


Docker Compose
 - YAML 형식의 설정 파일(.yml)로 여러 컨테이너 / 여러 복잡한 명령어들을 실행할 수 있도록 지원하는 툴.
 - https://docs.docker.com/compose/

 

도커 구성


https://subicura.com/2017/01/19/docker-guide-for-beginners-1.html

 

초보를 위한 도커 안내서 - 도커란 무엇인가?

도커를 처음 접하는 시스템 관리자나 서버 개발자를 대상으로 도커 전반에 대해 얕고 넓은 지식을 담고 있습니다. 도커가 등장한 배경과 도커의 역사, 그리고 도커의 핵심 개념인 컨테이너와 이

subicura.com

https://www.inflearn.com/course/%EB%8F%84%EC%BB%A4-%EC%9E%85%EB%AC%B8?inst=446961aa

 

초보를 위한 도커 안내서 - 인프런 | 강의

도커를 1도 모르는 입문자, 초보자분들을 위한 도커 안내서입니다. 복잡한 내용을 제외하고 도커가 왜 인기가 많고 어떻게 사용하는지 빠르게 익힐 수 있도록 집중하였습니다., 데브옵스(DevOps)

www.inflearn.com