Taking baby-developer steps
[도커&쿠버네티스] 도커란 무엇인가? 본문
도커를 한마디로 정의하자면 "데이터 또는 프로그램을 격리시키는 기능"을 제공하는 소프트웨어이다. 프로그램을 격리하는 주체를 컨테이너라고 하며, 이 컨테이너를 다루는 기능을 제공하는 소프트웨어가 도커이다. 도커를 사용하려면 도커 소프트웨어의 본체인 도커 엔진을 설치해야한다. 도커 엔진 외에도 "이미지"가 필요한데, 컨테이너를 만들 틀 같은 존재라고 생각하면 된다. 용량이 허락하는 한 하나의 도커에서 여러개의 컨테이너를 만들 수 있다. 도커는 내부적으로 리눅스를 사용한다. 따라서 컨테이너 내부에서도 리눅스만 동작 가능하다.
서버 환경 격리가 왜 필요한가
서버 구축시 설계할 때는 문제가 없던 프로그램끼리도 실제로 설치하면 오류가 발생하는 일이 있다. 대부분 문제의 원인은 "프로그램 간 공유"에 있다. 일반적 환경에서는 한 대의 서버마다 한 벌만 설치할 수 있는 소프트웨아가 대부분이다. 도커를 사용하면 격리환경에 다양한 버전의 프로그램을 각각 설치할 수 있다. 여러 컨테이너에서 같은 프로그램을 실행 할 수도 있다.
서버와 도커
서버란 서비스 제공자이다. 개발 현장에서의 서버는 "기능적 의미의 서버"와 "물리적 컴퓨터로서의 서버"를 가리킨다. 컨테이너는 격리된 환경을 제공 하며, 또 쉽게 옮길 수 있다는 특성을 가지고 있다. 도커만 설치돼 있으면 운영체제가 달라도 컨테이너를 옮길 수 있다. 도커를 이용하면 물리적 환경의 차이, 서버구성의 차이를 무시할 수 있어, 운영 서버와 개발 서버의 환경 차이로 인한 문제를 방지 할 수 있다.
참고 : 그림과 실습으로 배우는 도커&쿠버네티스 [개념과 작동 원리가 쏙쏙 이해되는 완벽 입문서]- 오가사와라 시게타카 지음
'CS 지식 > 서버 구축' 카테고리의 다른 글
[도커&쿠버네티스]쿠버네티스 - 마스터 노드와 워커노드, 초기 설치 소프트웨어, 컴포넌트 (0) | 2023.11.22 |
---|---|
[도커&쿠버네티스] 쿠버네티스란? (1) | 2023.11.21 |
자바 버전을 낮춰보자 (Java 17버전 설치 방법 / 19버전 -> 17 버전 다운그레이드) (0) | 2023.10.20 |
wordpress 설치 중 에러 해결 - Your PHP installation appears to be missing the MySQL extension which is required by WordPress. (0) | 2023.03.22 |
AWS EC2 인스턴스 ssh 연결 실패 - Connection timed out 오류 (1) | 2023.03.21 |