-
Notifications
You must be signed in to change notification settings - Fork 11
Open
Description
스텝 4 - 컨테이너 (Container) 입문 - 도커 (Docker)
클라우드 (Cloud) 란?
원하는 서비스를 골라서 쉽게 필요한 만큼 쓸수 있는 Utility 개념의 서비스. 기술의 중점은 가상화 (Virtualization) 이라고 해서 하드웨어 리소스를 (CPU, RAM Memory, Disk Memory, Network 등등) 을 소프트웨어로 쪼개서 원하는 사람들에게 N 분의 1 식으로 제공하고 필요하면 더 스케일 해주는 형식
클라우드 종류
컨테이너 (Container) 란?
클라우드 (Cloud) 가 점점 발전하다가 가벼운 앱을 돌리기엔 Virtual Macine (VM) 의 운영체재 (Operating System) 는 너무 무거워서 나온 경량형 (lightweight) 기술
Container vs Virtual Machine
도커 (Docker) 란?
원래 초기 리눅스/유닉스 운영체제에서 컨테이너 기초 개념은 있었는데 그 컨테이너 기술을 엄청 유명하게 만든 회사이자 기술
도커 101
- Docker CLI - 도커를 쉽게 본인 컴퓨터에서 사용하기 위한 Command 위주의 툴
- DockerHub - 도커에서 제일 제공하는 다양한 컨테이너가 있는 Image Registry (다른 registry 도 존재함)
- Docker images - 일종의 “블루프린트” 며 앱 소스코드들과 다른 base image 를 합쳐서 만듬
- Docker containers - 도커에서 image 를 통해 돌아가는 프로세스
따라 해봅시다 - Docker 돌려보기
스텝 1 - Dockerfile 적기
- Editor 에서 새로운 파일을 만들고
Dockerfile
이름으로 만듭니다 - 코딩 따라하기
FROM node:latest
WORKDIR /app
COPY ["package.json","package-lock.json","./"]
RUN npm install
COPY . .
CMD ["npm","start"]
- 파일 저장
스텝 2 - Docker image 만들기
- 같은 폴더에서 터미널/Powershell 을 열고 다음 command 를 실행 합니다
docker build -t kaita-app:1.0 .
docker images
를 실행 해서 확인 합니다
스텝 3 - Docker 컨테이너로 돌리기
- 같은 폴더에서 터미널/Powershell 을 열고 다음 command 를 실행 합니다
docker run -p 3000:3000 --detach --rm --name kaita-app kaita-app:1.0
-
docker ps
를 실행 해서 확인 합니다 -
브라우저를 오픈해서
localhost:3000
로 방문합니다
스텝 4 - Docker Clean Up
- 같은 폴더에서 터미널/Powershell 을 열고 다음 command 를 실행 합니다
docker ps
- 아이디를 카피 한후
docker stop <DOCKER PID>
실행 docker rm <DOCKER PID>
실행docker images
를 실행 합니다