Docker란?
Docker는 애플리케이션을 실행에 필요한 모든 것과 함께 패키징하여 어떤 서버에서든 같은 방식으로 실행되게 하는 도구입니다. 이 패키지를 컨테이너라고 합니다.
엔지니어와 상담하세요 지식 베이스
정의
컨테이너가 나오기 전에는 애플리케이션을 설치하려면 각 장비에서 라이브러리, 설정, 버전을 일일이 맞춰야 했습니다. Docker에서는 애플리케이션이 이런 요소를 이미 포함한 이미지로 제공되며, Linux 호스트에서 몇 초 만에 시작됩니다. 컨테이너는 호스트의 커널을 공유하므로 가상 머신보다 가볍지만, 서로 간의 격리 수준은 더 낮습니다.
Docker Compose는 애플리케이션과 데이터베이스처럼 여러 컨테이너를 하나의 파일에 기술합니다. 장비 한 대로 부족해지면 컨테이너를 Kubernetes 같은 플랫폼으로 옮길 수 있습니다.
기업의 사용처
- 업무용 애플리케이션: 티켓 관리, 문서, 사내 도구를 호스트 한 대에서 실행합니다.
- 쉬운 업그레이드: 새 이미지로 교체하고, 문제가 생기면 롤백합니다. 단, 새 버전이 이미 데이터베이스를 변경하지 않았어야 합니다. 먼저 데이터를 백업하세요.
- 테스트 환경: 운영 환경을 건드리지 않고 변경을 시험할 수 있도록 구성을 복제합니다.
- 이미지 레지스트리: 버전이 붙은 애플리케이션 이미지를 한곳에 보관합니다.
KawaConnect의 Docker 활용 방식
저희는 Docker와 Docker Compose로 업무용 애플리케이션을 실행하며, 그 앞단에 리버스 프록시와 TLS 인증서를 둡니다. 맞춤 소프트웨어를 위한 프라이빗 이미지 레지스트리를 구축하고, 워크로드가 호스트 한 대의 한계를 넘으면 Docker에서 Kubernetes로 옮깁니다.
관련 서비스
Docker 컨설팅
Compose 스택, 프록시, 인증서, 레지스트리.
Linux 및 Kubernetes
호스트 한 대로 감당하기 어려워진 워크로드를 위한 Kubernetes.
백업 및 복구
애플리케이션 데이터에 대한 검증된 복구.
자세히 보기
- Wikipedia의 Docker컨테이너, Docker의 작동 방식, 탄생 배경에 대한 쉬운 개요.
- Docker 웹사이트제품 정보와 Docker Desktop 및 Docker Engine 다운로드가 있는 회사 사이트.
- Docker 문서이미지 빌드, Compose 파일 작성, 컨테이너 실행에 대한 가이드와 레퍼런스.