🔙뒤로가기
도커의 개념
도커(Docker)는 컨테이너 기반의 오픈소스 가상화 플랫폼이다.
- 컨테이너 :
- 격리된 환경에서 애플리케이션을 실행할 수 있도록 묶어놓은 일종의 패키지
- 애플리케이션을 실행하는 데 필요한 라이브러리, 시스템 도구, 코드, 런타임 등을 포함
- 도커를 사용하면 애플리케이션을 빠르고 간편하게 배포하고 실행할 수 있다.
도커의 필요성
- 환경 일관성과 운영 효율성
- 애플리케이션의 환경 설정이나 라이브러리의 버전 등을 일일이 맞추는 데 많은 시간을 소비하는 경우가 많다.
- 또한 설정 과정에서 발생하는 문제들은 애플리케이션 실행 자체를 방해할 수 있다.
- 도커 컨테이너에는 애플리케이션을 실행하는 데 필요한 모든 것이 포함되므로, 어디서든 동일한 환경에서 애플리케이션을 실행시킬 수 있다.
- 즉 도커를 사용하면 일관적인 환경을 제공하므로 이와 같은 문제를 피할 수 있다.
- 이식성과 확장성
- 도커 컨테이너는 어떤 시스템에서도 실행할 수 있으므로, 애플리케이션의 배포와 이동이 쉽다.
- 도커를 사용하면 애플리케이션을 빠르게 확장하거나 축소할 수도 있다.
- CI/CD 파이프라인에 적합
- 도커를 이용하면 개발, 테스트, 배포 과정을 일관되게 관리할 수 있으므로 지속적인 통합(Continuous Integration)과 지속적인 배포(Continuous Deployment)를 쉽게 할 수 있다.
- 도커 이미지를 빌드하고 이를 여러 환경에서 테스트하고 배포하는 과정이 간단해지므로, 개발 파이프라인을 더욱 효율적으로 만들 수 있다.
- 서버 및 리소스 최적화
- 도커는 가볍고 오버헤드가 적어 여러 개의 컨테이너를 하나의 서버에서 실행하는 것이 가능하다.
- 이를 통해 서버 사용률을 높이고 리소스를 효율적으로 관리할 수 있다.