도커 교과서 18장 컨테이너의 애플리케이션 설정 관리
·
📚 책/도커 교과서
18장 컨테이너의 애플리케이션 설정 관리18.1 다단 애플리케이션 설정설정 데이터 종류는 세 가지다.버전에 따라 달리지는 설정모든 환경에서 동일하지만 버전별로 달라지는 설정환경에 따라 달라지는 설정기능 설정버전별로 애플리케이션의 동작을 달리하기 위한 설정애플리케이션에 설정 주입하기버전에 따라 달라지는 설정값은 이미지의 기본 설정에 포함시킨다.환경별로 달라지는 설정값은 컨테이너 파일 시스템에 주입되는 오버라이드 파일에 넣는다.기능 설정은 환경 변수 형태로 다룬다.$ docker container run -d -p 8080:80 diamol/ch18-access-log$ docker container run -d -p 8081:80 -v "$(pwd)/config/dev:/app/config-override..
도커 교과서 17장 도커 이미지 최적화하기: 보안, 용량, 속도
·
📚 책/도커 교과서
17장 도커 이미지 최적화하기: 보안, 용량, 속도17.1 도커 이미지를 최적화하는 방법이미지가 최적화되어야 이미지 빌드와 배포가 빨라지고, 애플리케이션의 보안이 지켜진다.애플리케이션을 업데이트하기 위해 컨테이너를 교체하면 새로운 이미지를 내려받지만, 기존 이미지도 삭제되지 않고 남는다.이 경우가 지속되면 디스크 용량이 순식간에 부족해지는 경우가 많다.$ docker system df주기적으로 docker system prune 명령어를 사용하여, 사용하지 않는 이미지 레이어나 빌드 캐시를 비워주는 것이 좋다.꼭 필요한 파일만 이미지에 포함시키기꼭 필요한 파일만 이미지에 포함시키는 것이 디스크 용량 절약의 첫걸음 이다.$ vi Dockerfile.v1FROM diamol/baseCMD echo app- ..
도커 교과서 16장 어디서든 실행할 수 있는 도커 이미지 만들기 : 리눅스, 윈도, 인텔, ARM
·
📚 책/도커 교과서
16장 어디서든 실행할 수 있는 도커 이미지 만들기 : 리눅스, 윈도, 인텔, ARM다중 아키텍처 이미지는 여러 개의 변종 이미지 형태로 빌드되고 레지스트리에 푸시된다.다중 아키텍처 이미지를 내려받으려 시도하면, 도커는 현재 컴퓨터의 아키텍처와 운영체제에 일치하는 변종 이미지를 받아 온다.16.1 다중 아키텍처 이미지가 중요한 이유AWS 는 ARM 프로세서를 사용하는 가상 머신을 제공한다.인텔이나 AMD 프로세서를 사용하는 가상 머신에 비해 단가가 거의 절반이다.ARM 프로세서의 인스트럭션은 인텔과 AMD 프로세서에서 사용하는 x64 인스트러션과 호환되지 않는다.이미지 아키텍처와 컴퓨터의 아키텍처가 일치해야만 이미지를 내려받을 수 있다.# 64비트 ARM 프로세서용 빌드$ docker build -t d..
도커 교과서 15장 보안 원격 접근 및 CI/CD를 위한 도커 설정
·
📚 책/도커 교과서
15장 보안 원격 접근 및 CI/CD를 위한 도커 설정도커 엔진과 API 분리시 컨테이너 도구의 선택지가 넓어지고, 로컬 명령행 도구로도 원격 컴퓨터에서 실행중인 도커 엔진 관리가 가능하다.15.1 도커 API의 엔드포인트 형태도커 엔진을 원격에서 접근할 수 있게 하려면 명시적으로 외부 접근을 허용해야 한다.HTTP 로 접근을 허용하는 경우는 반드시 피해야 한다.도커 엔진이 HTTP로 접근 가능하게 설정될 경우 호스트 주소만 알면 누구든지 도커 엔진을 마음대로 사용할 수 있다.15.2 보안 원격 접근을 위한 도커 엔진 설정도커에는 API 요청을 받을 수 있는 채널이 두 가지가 있다.A. 전송 계층 보안 (TLS)도커 API 는 상호 TLS를 사용하여 서버와 클라이언트가 각각 인증서를 가진다.서버의 인증서..
도커 교과서 14장 업그레이드와 롤백을 이용한 업데이트 자동화
·
📚 책/도커 교과서
14장 업그레이드와 롤백을 이용한 업데이트 자동화14.1 도커를 사용한 애플리케이션 업그레이드 프로세스배포 주기는 애플리케이션의 버전을 제외하고 아래 4가지를 고려해야 한다.A. 의존 모듈의 업데이트B. 애플리케이션 코드를 컴파일하는 데 사영하는 SDK 업데이트C. 애플리케이션이 동작하는 플랫폼의 업데이트D. 운영체제 업데이트애플리케이션에 변경이 없더라도 매달 새 버전을 배포해야 하는것은 부담스러운 일이다.하지만, 주기적인 배포를 자동화하면 빌드에 신뢰감이 생기고, 다음 배포 주기를 기다리지 않고도 작업이 끝난 새 기능을 바로 배포에 포함시킬 수 있다.빌드에 대한 신뢰감은 성공적인 배포가 계속 되어야만 쌓을 수 있다.이 때 중요한 것은 애플리케이션 헬스 체크이고, 헬스 체크 없이는 애플리케이션이 자기 수..
도커 교과서 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 를 구축할 경우 중앙 관리되는 형상 관리 시스템과, 도..
MyeongDev
'분류 전체보기' 카테고리의 글 목록