본문 바로가기

Programming/Server

[Server] Docker와 컨테이너, 이미지

Docker

컨테이너 기반의 오픈소스 가상화

 

 

 

컨테이너

격리된 공간에서 프로세스가 동작하는 기술

하나의 서버에 여러 개의 컨테이너를 실행할 경우 서로 영향을 미치지 않고 독립적으로 실행

가벼운 Virtual Machaine을 사용하는 느낌

apt-get이나 yum을 통해 패키지 설치 가능

이미지를 실행한 상태

 

 

 

이미지

컨테이너 실행에 필요한 파일과 설정 값을 포함하고 있는 것

컨테이너 실행에 필요한 모든 정보를 가지고 있기 때문에 의존성 파일을 컴파일하고 다른 것들을 설치할 필요가 없음

변하지 않음

컨테이너가 삭제되더라고 변하지 않고 그대로 남아있음

추가되거나 수정되는 값은 컨테이너에 저장

 

 

 

Linux에 Docker 설치하기

curl -fsSL https://get.docker.com/ | sudo sh

 

 

 

Docker 컨테이너 실행하기

docker run [OPTIONS] IMAGE[:TAG|@DIGEST] [COMMAND] [ARG...]
옵션 설명
-d detached mode (백그라운드 모드)
-p 호스트와 컨테이너 포트를 연결 (포워딩)
-v 호스트와 컨테이너의 디렉토리를 연결 (마운트)
-e 컨테이너 내에서 사용할 환경변수 설정
-name 컨테이너 이름 설정
-rm 프로세스 종료시 컨테이너 자동 제거
-it -i와 -t를 동시에 사용 (터미널 입력)
-link 컨테이너 연결 [컨테이너:별칭]

 

 

 

 

 

reference

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

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

     -  Docker 기본 사용법

        http://pyrasis.com/Docker/Docker-HOWTO