Docker
: 어플리케이션을 패키징하는 기술
- container를 이용해서 어느 컴퓨터에서든지 배포하고 구동가능하게 만든다
웹 배포를 한다는 것
- 개발 환경과 동일하게 서버 환경을 맞추는 것
- 그런데 같은 서버 안에 다른 환경을 넣어줘야한다면?
- 그래서 필요한 것이 가상화
- 가상화의 문제점
- 비효율적으로 환경을 나누게 된다.
- 그래서 필요한 것이 경량화 시킨 컨테이너
- 컨테이너
- 운영체제를 포함하지 않고, Host OS를 통해 실행
- 이미지를 보내주면 알아서 관리해줌
- 도커가 켜지면 이미지로 받은 것을 바로 실행
Docker 3대 요소
- Dockerfile
: 어플리케이션을 어떻게 구동할 것인지 설명해 놓은 것
- image(like Class)
: Dockerfile통해 만들어짐, 실행 환경을 캡쳐해 놓은 느낌
- Container(like Object)
: image를 이용해서 고립된 환경에서 어플리케이션을 구동