본문 바로가기
기타

Docker 개념, 사용법

by CodeMango 2023. 5. 26.

Docker란?

Docker는 애플리케이션을 신속하게 구축, 테스트 및 배포할 수 있는 소프트웨어 플랫폼입니다.

Docker는 소프트웨어를 컨테이너라는 표준화된 유닛으로 패키징하며, 이 컨테이너에는 라이브러리, 시스템 도구, 코드, 런타임 등 소프트웨어를 실행하는 데 필요한 모든 것이 포함되어 있습니다. Docker를 사용하면 환경에 구애받지 않고 애플리케이션을 신속하게 배포 및 확장할 수 있으며 코드가 문제없이 실행될 것임을 확신할 수 있습니다.

AWS에서 Docker를 실행하면 개발자와 관리자가 어떠한 규모에서든 매우 안정적이며 저렴한 방식으로 애플리케이션을 구축, 제공 및 실행할 수 있습니다.

 

 

Docker를 왜 사용하나요?

1. 환경 일관성: Docker를 사용하면 개발, 테스트 및 프로덕션 환경에서 동일한 애플리케이션 실행 환경을 구축할 수 있습니다. 이를 통해 애플리케이션의 이식성과 호환성을 높일 수 있으며, 개발자와 운영팀 간의 협업을 간소화합니다. 모든 개발 환경과 서버에서 일관성 있는 실행 환경을 구성할 수 있기 때문에 개발자는 "작동은 제 로컬에서 잘 되는데 왜 프로덕션 환경에서는 안 되는 걸까?"와 같은 문제를 해결할 수 있습니다.

2. 빠른 배포 및 확장: Docker를 사용하면 애플리케이션을 가볍게 패키징하여 배포할 수 있습니다. 컨테이너 이미지는 필요한 경우 미리 빌드되어 있기 때문에 배포 시간이 크게 단축됩니다. 또한, 컨테이너를 쉽게 복제하고 스케일링할 수 있으므로 애플리케이션의 확장성을 쉽게 관리할 수 있습니다.

3. 자원 효율성: Docker는 가상화 기술과는 달리 컨테이너가 호스트 운영체제의 커널을 공유하기 때문에 더 가볍고 효율적입니다. 하나의 호스트에서 여러 개의 컨테이너를 실행할 수 있으며, 리소스를 효율적으로 관리할 수 있습니다. 또한, 컨테이너의 시작 및 종료가 빠르기 때문에 개발 및 테스트 프로세스를 더욱 효율적으로 수행할 수 있습니다.

4. 확장성과 유연성: Docker는 다양한 환경에서 동작할 수 있으며, 다양한 운영 체제와 클라우드 환경에서 호환성이 뛰어납니다. 개발자는 도커 이미지를 사용하여 애플리케이션을 쉽게 이동하고 배포할 수 있으며, 다른 플랫폼에서도 동일한 방식으로 실행할 수 있습니다.

5. 생태계와 지원: Docker는 매우 활발한 개발자 및 커뮤니티 생태계를 가지고 있습니다. Docker Hub를 비롯한 다양한 도커 레지스트리에서는 이미지를 공유하고 사용할 수 있으며, Docker 커뮤니티에서는 문제 해결 및 지원을 제공합니다.


scale 개념

scale up : 수직적인 확장
scale out : 수평적인 확장

 

https://www.docker.com/products/docker-desktop/

 

Download Docker Desktop | Docker

Docker Desktop is available to download for free on Mac, Windows, or Linux operating systems. Get started with Docker today!

www.docker.com

 

댓글