서로 다른 운영체제에서도 같은 환경을 구현할 수 있도록 도와주는 프로그램
(Window에서 작성한 코드를 서버 Linux에 올리면 코드가 작동하지 않는 문제를 해결!)
설정한 환경을 docker가 읽고 virtual Container를 컴퓨터에 생성해줌
각각의 컨테이너는 독립적이기 때문에 하나의 서버 안에 여러 개의 컨테이너 환경 구축 가능
version: '3'
services:
web:
image: nginx
ports:
- "8080:80"
db:
image: postgres
environment:
POSTGRES_PASSWORD: example
Virtual Machine

Container

Image는 애플리케이션의 스냅샷 같은 느낌이다.
Image가 Class라면, Container는 인스턴스
도커에서 이미지를 생성하기 위한 용도로 작성하는 파일
⇒ 현재 애플리케이션의 정보를 기술해둔 템플릿

npm install 보다 npm ci를 추천!npm install은 라이브러리의 가장 최신 버전을 설치하지만,npm ci 는 package-lock.json에 명시된 버전을 설치하기 때문에 개발 환경과 정확히 같은 환경을 구축할 수 있다.⬇️ 컨테이너 실행 방법, 네트워크 흐름 등 정리 보러가기 ⬇️
https://royal-terrier-541.notion.site/Docker-7c244506c05b4fc4a9876ace1bdd220e?pvs=4