책 소개
소스 파일은 아래 깃허브 페이지에서 내려 받으실 수 있습니다.
(https://github.com/AcornPublishing/docker-practice)
요약
도커의 간단한 아이디어, 즉 애플리케이션과 애플리케이션의 의존 라이브러리를 배포 가능한 하나의 컨테이너에 패키징하는 것이 소프트웨어 산업에서 큰 반향을 일으켰다. 이제 컨테이너는 엔터프라이즈 인프라에 필수이며 도커는 모두가 인정하는 업계 표준이다. 이 책은 도커를 깊이 알고 싶은 개발자와 데브옵스 담당자에게 CI/CD, 쿠버네티스 오케스트레이션 툴, 클라우드 워크플로, 도커 스웜, 좋은 사례와 기술, 주의 깊게 봐야 할 보안 내용을 소개한다.
추천의 글
“도커를 이해하고 설정 및 관리하려면 안내서가 필요하다. 이 책은 일반적인 문제를 확인하고 해결하는 환상적인 작업을 알려준다.
- 블룸버그사(Bloomberg)의 알렉스 바실(Alex Basile)
“도커는 소프트웨어 업계 종사자들의 마음을 사로잡았다. 폭풍이 몰아치는 바다(소프트웨어 업계)를 가장 잘 항해하기 위해 꼭 필요한 책이다."
- 휘슬러 테크놀로지사(Whistler Technologies)의 야기즈 얼칸(Yagiz Erkan)
"도커를 설명한 수준이 아니라 커맨드를 더욱 잘 사용하는 방법을 알려준다. 이 책을 제대로 이해하면 유능한 데브옵스 담당자가 될 수 있다."
- 펜네오사(Penneo)의 아흐마드 나 지르 라자
“당신의 문제를 해결할 수 있는 풍부하고 실질적인 조언이 담긴 도커 책이다.”
- 도커사의 벤 퍼시만(Ben Firshman)
“4성급 레시피로 가득하다!”
- 솔리드 파이어사(SolidFire)의 채드 데비스(Chad Davis)
“개발자가 실행해 볼 수 있는 도커 트릭으로 가득하다.”
- 넷 이펙트 테크놀로지사(Net Effect Technologies)의 커크 브래트쿠스(Kirk Brattkus)
“도커를 사용할 때 매우 유용한 팁이 있다. 현장에서 유용하고 실용적이어서 실제 도커 이슈를 해결할 수 있다.”
- 아마존 고객
“읽기 쉽고 따라 하기 쉽다. 이 책을 읽으면 도커의 내부 동작 방식을 훨씬 잘 이해할 수 있다.”
- 아마존 고객
이 책에서 다루는 내용
■ 지속적 통합과 배포
■ 쿠버네티스 오케스트레이션 툴
■ 클라우드 작업 흐름 간소화
■ 도커 스웜 모드
■ 최근에 소개된 모범 사례와 기술
이 책의 대상 독자
구조화된 코드를 개발하는 기능, 소프트웨어 개발 및 배포 프로세스 인식과 같은 기본적인 개발 기술과 개념을 이해하고 있다고 가정한다. 또한 핵심 소스 제어 저장소의 기본 지식과 TCP/IP, HTTP, 포트와 같은 네트워크 기본 사항도 알고 있다는 전제하에 설명했다.
이 책의 구성
16개 장이 5개의 부로 나뉘어 있다.
1부, ‘도커의 기초’에서는 먼저 도커를 소개하고 기본 도커 커맨드를 실행할 수 있도록 도커 이해의 토대를 마련한다. 그리고 2장에서 도커의 클라이언트-서버 아키텍처와 디버깅 방법을 설명한다. 디버깅은 도커 설정 문제를 식별할 때 유용하다.
2부, ‘도커와 개발’은 독자들이 도커에 익숙하도록 돕고 머신에서 도커를 최대한 활용하는 데 중점을 둔다. 3장에서는 도커를 쉽게 시작할 수 있도록 익숙한 가상 머신의 개념과 유사한 방식으로 도커의 기초를 설명한다. 4장, 5장, 6장에서는 도커 이미지를 빌드 및 실행하고, 도커를 관리하기 위해 매일 사용하는 도커 기술을 자세히 설명한다. 7장에서는 설정 관리 기술을 살펴보면서 도커 이미지를 심층적으로 빌드하는 주제를 살펴본다.
3부, ‘도커와 데브옵스’는 소프트웨어 빌드 및 테스트의 자동화에 도커를 사용하는 것부터 구축된 소프트웨어를 여러 장소로 배포하는 것까지 데브옵스 문맥에서 도커를 사용하는 부분을 다룬다. 3부에서 도커 컴포즈를 소개하고 네트워크 시뮬레이션 및 도커 네트워크 플러그인과 같은 고급 네트워크 주제를 다루는 도커 가상 네트워크를 설명하며 마무리한다.
4부, ‘단일 머신에서 클라우드까지의 오케스트레이션’에서는 컨테이너 오케스트레이션 주제를 다룬다. 단일 호스트에서 단일 컨테이너를 실행하는 방법부터 ‘운영체제로서의 데이터 센터’에서 실행하는 도커 기반 플랫폼에서 컨테이너를 실행하는 방법까지 설명한다. 13장은 도커 기반 플랫폼을 선택할 때 고려해야 할 부분을 추가로 다룬다. 도커 기반 플랫폼을 구현할 때 엔터프라이즈 아키텍트가 무엇을 생각하는 것인가의 관점을 안내한다.
5부, ‘상용 환경의 도커’는 상용 환경에서 도커를 효과적으로 사용할 수 있는 여러 주제를 다룬다. 14장에서는 컨테이너 내부에서 실행 중인 프로세스를 보호하는 방법과 외부에 노출된 도커 데몬에 접근을 제한하는 방법을 설명하는 중요한 보안 주제를 설명한다. 15장, 16장에서 상용 환경에서 도커를 실행하기 위한 실용적인 정보를 자세히 알려준다. 15장에서는 로그 저장부터 자원 제한에 이르기까지 컨테이너 문맥에서 기존 시스템 관리자 지식을 적용하는 방법을 설명한다. 16장에서는 만날 수 있는 도커 문제를 살펴보고 도커 디버깅 및 해결할 수 있는 단계를 제공한다.
부록에서는 가상 머신 내부와 윈도우 OS를 포함해 다양한 방법으로 도커 설치, 사용 설정의 세부 사항을 포함한다.
목차
목차
- 1부. 도커의 기초
- 1장. 도커 살펴보기
- 2장. 도커 내부 이해하기
- 2부. 도커와 개발
- 3장. 도커를 경량 가상 머신으로 사용하기
- 4장. 이미지 빌드하기
- 5장. 실행 중인 컨테이너
- 6장. 매일 도커 사용하기
- 7장. 설정 관리: 순서대로 정리하기
- 3부. 도커와 데브옵스
- 8장. 지속적 통합: 개발 파이프라인의 속도 높이기
- 9장. 지속적 배포: 도커 원칙에 완벽히 적합
- 10장. 네트워크 시뮬레이션: 불편함 없는 실제와 비슷한 환경 테스트
- 4부. 단일 머신에서 클라우드까지의 오케스트레이션
- 11장. 컨테이너 오케스트레이션 입문
- 12장. 도커를 운영체제로 구성된 데이터 센터
- 13장. 도커 플랫폼
- 5부. 상용 환경의 도커
- 14장. 도커 및 보안
- 15장. 상용 환경에서 도커 실행하기
- 16장. 상용 환경에서의 도커 사용: 도전 과제 처리하기
- 부록 A. 도커 설치 및 사용
- 부록 B. 도커 설정
- 부록 C. 베이그란트