유튜브 'TTABAE-LEARN'
모든 출처는 https://youtu.be/3HId-tpYaZs
6. 도커 컨테이너 살펴보기
1. 컨테이너 / 컨테이너 이미지 이론
컨테이너 = 하나의 Application 이자 하나의 Process!
컨테이너는 각각의 어플리케이션으로 독립된 공간을 가지기 때문에 서로 영향을 주고받지 않기 때문에 개별적인 수정이 가능하고 cpu, memory, network, disk 등 컴퓨터 리소스 또한 따로 차지한다.(user나 hostname 까지도 따로 할당된다.)
Docker Host = 리눅스 커널 환경에서 docker daemon이 실행되는 시스템
이말인 즉 도커가 컨테이너가 구동될 수 있는 플랫폼을 만들어놨다!
도커 데몬이 없다면 도커 컨테이너는 실행될 수 없다.(설명)
커널 및 하드웨어가 한 개라도 구동가능하며 그 리소스를 나눠갖는다.
Host입장에서 컨테이너는 그저 한개의 독립적인 프로세스일뿐
컨테이너 이미지 = 컨테이너 내부 레이어를 이미지화 시킨 것
컨테이너는 어떤 어플리케이션이 정상적으로 동작할 수 있도록 계층적인 구조를 가진다. 이때 각 계층을 이미지화 시켜 빌드한다.
- 도커 호스트(도커 데몬+리눅스) 위에서 도커 컨테이너는 구동된다.
- 컨테이너 이미지는 도커 호스트의 저장소에 파일 형태로 존재한다.(Read Only)
- 컨테이너 이미지가 사용자에 의해 running 되면 하나의 독립적인 프로세스로 작동한다.
- 위에서 사용되는 이미지를 가져오기 위한 예를 들어 보면이후 해당 도커호스트(서버)에서 사용자는 nginx 기반 어플리케이션을 구동할 수 있다.
- + 도커 클라이언트 커맨드? 도커에 대한 수행 명령어
- $ docker search nginx = 컨테이너 이미지를 검색한다 $ docker pull nginx:latest = 존재하는 컨테이너 이미지를 가져온다 $ docker run -d --name web -p80:80 nginx:latest = 컨테이너 이미지 running + 80포트 = HTTP(웹)
2. 컨테이너 동작 방법 실습
- XShell을 통한 실습
- 도커 데몬 동작 확인(root)
- systemctl status docker
- 도커 호스트 동작 및 상태 확인(사용자)
- docker version
- 도커 컨테이너 유무 확인(root)
- docker search nginx
- 도커 컨테이너 이미지 설치(root)
4-1. 설치된 컨테이너 확인docker pull nginx cd /var/lib/docker/ ls -l
- 4-2. nginx 설치
다섯개의 이미지 layer(각 파일) 다운로드
- docker image ls cd /var/lib/docker/ ls -l
- 컨테이너화 & 실행(사용자)
- docker image ls docker run --name web -d -p 80:80 nginx docker ps curl localhost:80
- 프로세스(컨테이너)의 UUID 확인 가능.
80포트를 통해 Website 방문 가능. - 컨테이너 중지 및 삭제
docker stop web curl localhost:80 docker rm web docker rmi nginx
- 실행되고 있는 컨테이너 정지 컨테이너 삭제 컨테이너 이미지 삭제
'Cloud Native > Docker' 카테고리의 다른 글
도커(Docker) - 유튜브 'TTABAE-LEARN' 따라하기 7+(문제풀이/오류) (0) | 2022.02.17 |
---|---|
도커(Docker) - 유튜브 'TTABAE-LEARN' 따라하기 7(도커 컨테이너 살펴보기) (0) | 2022.02.15 |
도커(Docker) - 유튜브 'TTABAE-LEARN' 따라하기 5(Windows에 DockerDesktop 설치) (0) | 2022.02.15 |
도커(Docker) - 유튜브 'TTABAE-LEARN' 따라하기 4(도커 설치 실습) (0) | 2022.02.15 |
도커(Docker) - 유튜브 'TTABAE-LEARN' 따라하기 3(도커 설치 환경 구축 - CentOS편) (0) | 2022.02.15 |