▷ 도커 서비스 환경
- docker-compose라는 여러 docker 컨테이너를 통합적으로 관리하는 cli 프로그램으로써 docker를 설치하면 번들로써 제공함.
- 컨테이너 기반을 이용하여 단순한 저장공간 컨테이너(볼륨)를 만들어 저장공간을 container끼리 연결할 수 있으며,
실행한 호스트의 저장공간에도 접근 가능함.
- Docker는 게스트 OS를 설치하지 않음.
( 단지 이미지에 서버 운영을 위한 프로그램과 라이브러리만 격리해서 설치하기 때문에 이미지 용량이 크게 줄어듦 )
- Docker의 컨테이너는 OS를 설치하지 않기 때문에 호스트와 OS자원을 직접 사용함.
( Docker는 하드웨어 가상화 계층이 존재하지 않기 때문에 메모리접근, 파일접근 등 관련한 기능에서 직접 접근하기 때문에
가상화보다 빠른 성능을 보여줌 )
- Docker 프로그램에서 다양한 API를 제공하기 때문에 원하는 만큼 자동화가 가능함.
▷ 도커 서비스 환경 구성
「 확장성」
: 이미지만 만들어 놓으면 컨테이너만 관리
: 서비스 이전이나 신규 서버에 서비스 추가 시 docker run 명령어로 처리
: 개발서버나 테스트서버 운용 간편
「 표준성」
: 도커를 사용하지 않는 경우 ruby, node.js, go, php로 만든 서비스들의 배포방식은 제각각
: 컨테이너라는 표준으로 서버를 배포하므로 모든 서비스들의 배포과정이 동일
「 이미지」
: 이미지에서 컨테이너를 생성하기 때문에 반드시 이미지를 만드는 과정이 필요
: 이미지를 저장할 곳이 필요
「 설정」
: 설정은 보통 환경변수로 제어
: MYSQL_PASS=password와 같이 컨테이너를 띄울 때 환경변수를 같이 지정
: 하나의 이미지가 환경변수에 따라 동적으로 설정파일을 생성하도록 만들어야 함
「 공유자원」
: 컨테이너는 삭제 후 새로 만들면 모든 데이터가 초기화됨
: 업로드 파일을 외부 스토리지와 링크하여 사용하거나 S3 같은 별도의 저장소 필요
: 세션이나 캐시를 파일로 사용 시 memcached나 redis와 같은 외부로 분리
'Dev etc > etc' 카테고리의 다른 글
[Docker] 도커 컴포즈(Docker Compose)란 ? (0) | 2023.06.23 |
---|---|
[Docker] 도커 이미지(Image)와 컨테이너 (0) | 2023.06.19 |
[Server] API와 SPI의 차이점 (0) | 2022.11.19 |
[Web] HTTP 상태 코드 종류 / 정리 (2) | 2021.02.05 |
[etc] Web에서 Popup() vs Modal() 비교. 팝업창과 모달창 (0) | 2020.08.19 |
댓글