도커 교과서 13장 도커 스웜 스택으로 분산 애플리케이션 배포하기
·
📚 책/도커 교과서
13장 도커 스웜 스택으로 분산 애플리케이션 배포하기12장에서는 CLI 를 사용하여 매니저 노드에 직접 접속하여 도커 스웜을 조작하였다.그러나, 실무에서는 YAML 파일을 작성하여 매니저 노드에게 전달하고, 해당 실행은 오케스트레이션 도구에게 맡긴다.13.1 도커 컴포즈를 사용한 운영 환경스웜 모드에서는 애플리케이션을 배포할 때 스택을 만든다.이를 도커 스택이라고 부른다.도커 스택은 서비스, 네트워크, 볼륨 등 여러개의 도커 리소스를 묶어 만든 리소스를 말한다.도커 스웜도 도커 컴포즈를 통해 애플리케이션을 배포할 수 있다.version: "3.7"services: todo-web: image: diamol/ch06-todo-list ports: - 8080:80$ docker sta..
도커 교과서 12장 컨테이너 오케스트레이션: 도커 스웜과 쿠버네티스
·
📚 책/도커 교과서
12장 컨테이너 오케스트레이션: 도커 스웜과 쿠버네티스운영환경에서 애플리케이션은 컨테이너에서 실행되지만, 여러 대의 도커 호스트와 컨테이너를 관리해주는 관리 레이어가 한 층 추가된다.이런 관리 레이어를 오케스트레이션이라고 하며, 주요 오케스트레이션 도구로 도커 스웜과 쿠버네티스가 있다.12.1 컨테이너 오케스트레이션 도구란?오케스트레이션 도구란 클러스터를 구성하는 여러 대의호스트 컴퓨터를 의미한다.여러 대의 호스트에 도커를 설치해 클러스터를 만들고, 이를 오케스트레이션 플랫폼에 등록하여 사용한다.오케스트레이션 도구는 컨테이너를 관리하고, 서비스를 위한 작업을 분배하며, 트래픽을 분산하고, 컨테이너 상태를 관리한다.오케스트레이션 도구가 각 서버, 네트워크, 스토리지 장치의 세부 사항을 가려준다.오케스트레이..
도커 교과서 11장 도커와 도커 컴포즈를 이용한 애플리케이션 빌드 및 테스트
·
📚 책/도커 교과서
11장 도커와 도커 컴포즈를 이용한 애플리케이션 빌드 및 테스트11.1 도커를 이용한 지속적 통합 절차CI 절차는 코드로부터 시작하는 파이프라인이고, 일련의 단계를 밟아 테스트를 통과하고 즉시 배포 가능한 결과물을 내놓는다.도커는 CI 절차의 일관성을 유지해 준다.CI 절차가 시작되면 도커는 이미지를 빌드한다.해당 이미지는 빌드 및 테스트, 패키징, 배포를 위한 레지스트리 푸시까지 된 이미지다.CI 파이프라인의 각 단계는 도커 혹은 도커 컴포즈에 의해 실행되며 실제 과정은 컨테이너 내부에서 진행된다.추가로, 도커 컴포즈로 전체 애플리케이션을 실행하고 트랙픽 발생 용 컨테이너를 이용해 엔드 투 엔드 테스트를 진행할 수도 있다.이렇게 도커를 이용한 CI 를 구축할 경우 중앙 관리되는 형상 관리 시스템과, 도..
도커 교과서 10장 도커 컴포즈를 이용한 여러 환경 구성
·
📚 책/도커 교과서
10장 도커 컴포즈를 이용한 여러 환경 구성배포가 실패하는 주된 원인은 환경 차이다.도커는 패키지에 모든 의존 모듈이 함께 들어가기 떄문에 해당 문제를 해결할 수 있다.하지만, 환경에따라 동작을 다르게 해야 할 필요가 있다.도커 컴포즈의 고급 기능을 사용하여 이를 해결할 수 있다.10.1 도커 컴포즈로 여러 개의 애플리케이션 배포하기같은 애플리케이션을 버전을 다르게 구동해야하는 경우가 있따.여러 환경을 구성해 사용하려면, 환경마다 애플리케이션이 다르게 동작하게 해야 한다.도커 컴포즈 파일에서 해당 구성을 명시해야 한다.도커 컴포즈 파일은 레이블 명명 규칙을 통해 도커 리소스를 컨테이너와 서비스로 구분하며 관리한다.도커 컴포즈 리소스 이름 규칙도커 컴포즈 파일이 위치한 디렉토리의 이름을 기본으로 프로젝트 ..
도커 교과서 9장 컨테이너 모니터링으로 투명성 있는 애플리케이션 만들기
·
📚 책/도커 교과서
9장 컨테이너 모니터링으로 투명성 있는 애플리케이션 만들기컨테이너에서 실행되는 애플리케이션의 투명성은 매우 중요한 요소다.투명성을 확보해야 애플리케이션의 동작 및 상태, 문제의 원인을 정확히 파악할 수 있다.9.1 컨테이너화된 애플리케이션에서 사용되는 모니터링 기술 스택프로메테우스를 사용하면 모니터링의 중요한 측면인 일관성이 확보된다.모든 애플리케이션을 똑같은 측정값을 통해 표준적인 형태로 모니터링할 수 있다.도커 엔진의 측정값도 같은 형식으로 추출할 수 있다.해당 기능을 사용하려면 프로메테우스 측정 기능을 명시적으로 활성화해야 한다.$ vi /etc/docker/daemon.json{ "metrics-addr" : "0.0.0.0:9323", "experimental" : true}$ sudo syst..
도커 교과서 8장 헬스 체크와 디펜던시 체크로 애플리케이션의 신뢰성 확보하기
·
📚 책/도커 교과서
8장 헬스 체크와 디펜던시 체크로 애플리케이션의 신뢰성 확보하기도커 스웜이나 쿠버네티스의 경우 컨테이너 플랫폼상에서 애플리케이션이 스스로 이상에서 회복할 수 있도록 해 주는 기능을 제공한다.이미지에 애플리케이션의 상태가 정상인지 확인할 수 있는 정보를 함께 패키징한다.애플리케이션이 정상적으로 동작하지 않으면, 플랫폼이 비정상 컨테이너를 삭제하고 새 컨테이너로 교체한다.8.1 헬스 체크를 지원하는 도커 이미지컨테이너를 실행시키면 내부에서 특정 프로세스가 실행된다.그러나, 해당 프로세스가 실행중이라고 애플리케이션이 정상적인 상태라는 뜻은 아니다.도커는 애플리케이션의 상태가 정상인지 확인할 수 있는 정보를 도커 이미지에 넣을 수 있다.$ docker container run -d -p 8080:80 diamo..
도커 교과서 7장 도커 컴포즈로 분산 애플리케이션 실행하기
·
📚 책/도커 교과서
7장 도커 컴포즈로 분산 애플리케이션 실행하기7.1 도커 컴포즈 파일의 구조분산 애플리케이션을 기준으로 보면 Dockerfile 스크립트는 애플리케이션의 한 부분을 패키징하는 수단이다.즉, 각 애플리케이셔의 Dokerfile 을 패키징하고 관리하기 위해서는 Docker Compose 를 사용하면 된다.Docker Compose 는 모든 컴포넌트가 실행 중일 때 어떤 상태가 되어야 하는지를 기술하는 파일이다.도커 컴포즈는 사람도 쉽게 읽고 이해할 수 있으며, YAML 문법으로 기술한다.Docker Compose 예시version : '3.7'services: todo-web: image: diamol/ch06-todo-list ports: - "8020:80" networks: - app-ne..
도커 교과서 6장 도커 볼륨을 이용한 퍼시스턴트 스토리지
·
📚 책/도커 교과서
6장 도커 볼륨을 이용한 퍼시스턴트 스토리지6.1 컨테이너 속 데이터가 사라지는 이유컨테이너의 디스크 역시 이미지 레이어를 순서대로 합쳐 만든 가상 파일 시스템이다.모든 컨테이너는 독립된 파일 시스템을 갖는다.즉, 한 컨테이너에서 파일 시스템을 통해 파일을 수정하더라도 다른 컨테이너는 영향을 받지 않는다.컨테이너를 종료해도 파일 시스템은 삭제되지 않는다.$ docker container run --name rn1 diamol/ch06-random-number$ docker container run --name rn2 diamol/ch06-random-number$ docker container cp rn1:/random/number.txt number1.txt$docker container cp rn2:..
MyeongDev
'분류 전체보기' 카테고리의 글 목록 (2 Page)