본문 바로가기

Docker

[Docker] 도커란?

반응형

 

도커(Docker)

 

도커

 - 리눅스 컨테이너에 여러 기능을 추가

 - 어플리케이션을 컨테이너로 좀 더 쉽게 사용할 수 있게 만든 오픈소스 프로젝트

 - 가상 머신과 달리 성능 손실이 거의 없는 클라우드 솔루션으로 주목

 

도커 프로젝트

 - 도커 컴포즈, 도커머신, 레지스트리, Kitematic 등 다양한 프로젝트 존재 
 - 일반적 도커 : 도커엔진을 의미
 - 도커 프로젝트는 도커 엔진을 효율적으로 사용하기 위한 도구들

 

가상머신과 도커 컨테이너

 

가상머신

 - 하이퍼바이저를 통한 가상화로 성능 손실이 발생

 - 완벽한 독립적 공간을 생성하나, 이미지 용량이 크고 가상머신 배포에 부담

 

도커 컨테이너

 - 리눅스 chroot, 네임스페이스, cgroup을 사용한 프로세스 단위 격리 환경 구성

 - 어플리케이션 구동을 위한 라이브러리만 포함한 이미지 생성, 용량이 적 

 

 

도커데몬

 

도커구조

 - 도커 명령어

$ which docker
/usr/bin/docker

 

docker : 클라이언트 CLI 명령어

 

 - 도커프로세스

$ ps aux | grep docker
avahi       706  0.0  0.0  30204  1816 ?        Ss   05:45   0:00 avahi-daemon: running [docker1.local]
root        923  0.3  2.2 675780 41280 ?        Ssl  05:45   0:21 /usr/bin/dockerd --insecure-registry 192.168.35.51:5000

$ ls /var/run/docker.sock 
/var/run/docker.sock

 

dockerd : 도커 엔진의 프로세스는 dockerd 파일로 실행
docker 클라이언트는 /var/run/docker.sock 유닉스 소켓을 통해 API 명령 호출

 

도커 데몬 실행

 - 도커 데몬 서비스 실행

$ systemctl start docker
$ systemctl stop docker

 

 - 도커 데몬 서비스 자동 실행 설정

$ systemctl enable docker

 

도커 데몬 직접 실행

 - 도커 데몬 실행

$ dockerd --help

Usage:	dockerd COMMAND

A self-sufficient runtime for containers.

Options:
      --add-runtime runtime                     Register an additional OCI compatible runtime (default [])
..

 

docker 서비스는 dockerd 명령을 참조해 서비스를 시작

 

도커 데몬 실행 옵션 설정

 - dockerd 명령에 옵션 설정

$ dockerd -D -H tcp://0.0.0.0:2375 --insecure-registry=192.168.100.99:5000 --tls=false

 

 - 도커 데몬 서비스에서 옵션 설정

$ vi /etc/systemd/system/multi-user.target.wants/docker.service
[Service]
..
ExecStart=/usr/bin/dockerd --insecure-registry 192.168.35.51:5000
..

 

systemd 서비스의 실행 옵션을 변경 후 적용
systemd 버전 업그레이스시 덮어씌워져 변경 될 수 있음

 

 - docker 서비스용 옵션 설정 파일 생성 후 변경

$ mkdir -p /etc/systemd/system/docker.service.d
$ vi /etc/systemd/system/docker.service.d/docker.conf
[Service]
..
ExecStart=/usr/bin/dockerd --insecure-registry 192.168.35.51:5000

 

systemd 버전 업그레이드와 관계없이 영구 적용
docker 서비스 재시작 후 적용확인

 

도커 데몬 실행 옵션 설정

 - 도커 데몬 원격 API 사용 가능 옵션

$ dockerd -D -H tcp://192.168.99.100:2375

 

-H : 도커 데몬 API 접근 통신 포트 설정
기본 API 값 : -H unix:///var/run/docker.sock (로컬 유닉스 소켓 사용)
-H tcp://192.168.99.100:2375 (URL 로 http 요청을 보내 데몬 API  접근)

 

 - docker 클라이언트의 docker 데몬 주소 설정

[client]  $ export DOCKER_HOST=”tcp://192.168.199.100:2375”
[client]  $ docker version

[client]  $ docker -H tcp://192.168.100.2375 version

 

 

반응형

'Docker' 카테고리의 다른 글

[Docker] Install Docker Engine on Ubuntu  (0) 2022.01.06