도커 컨테이너 [설치부터 이미지 제작, 쿠버네티스와 플래널, 콕핏, 아토믹 활용법까지]
- 원서명Docker Containers : Build and Deploy with Kubernetes, Flannel, Cockpit, and Atomic (ISBN 9780134136561)
- 지은이크리스토퍼 네거스(Christopher Negus)
- 옮긴이남기혁
- 감수자이충희, 한재희
- ISBN : 9788960779679
- 30,000원
- 2017년 01월 26일 펴냄 (절판)
- 페이퍼백 | 412쪽 | 188*235mm
- 시리즈 : 오픈소스 프로그래밍
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
요약
이 책은 도커를 처음 접하는 이들이 도커의 기본 개념과 기능을 쉽게 익힐 수 있도록 실습 중심으로 설명한다. 전체 주제를 총 5부로 나눠서, 컨테이너의 개념과 도커의 설치 및 기본 사용법, 개별 컨테이너를 다루기 위한 여러 가지 기능과 옵션 사용법, 클라우드 환경에서 컨테이너를 관리하는 방법, 오케스트레이션을 이용해 여러 개의 컨테이너를 클러스터로 구성해 사용하는 방법, 컨테이너 이미지 제작 방법 등을 차례대로 소개한다. 이러한 주제를 구체적인 예제와 함께 소개하기 때문에, 처음부터 차근차근 따라가면 고급 주제로 넘어가기 위한 기본기를 갖출 수 있다.
이 책에서 다루는 내용
■ 도커의 개념과 기능 소개
■ 표준 리눅스 또는 아토믹 호스트나 CoreOS 등 컨테이너 전용 OS에 도커 설치
■ 컨테이너 런타임 환경과 사설 도커 레지스트리 구축
■ 도커 이미지와 컨테이너의 생성과 구동
■ 컨테이너 이미지를 검색하고, 가져오고, 저장하고, 불러오고, 태깅하는 방법
■ 도커 레지스트리에서 로컬 시스템으로 컨테이너를 가져오거나 로컬에 있는 컨테이너를 레지스트리에 올리는 방법
■ 도커 컨테이너와 호스트 네트워킹 및 스토리지 통합
■ 도커 빌드 커맨드와 도커파일로 컨테이너 빌드
■ 공간 사용량 최소화 및 불필요한 컨테이너 삭제
■ 컨테이너에 슈퍼 유저 권한을 부여해 호스트에 접근하는 방법
■ 쿠버네티스를 이용해 여러 컨테이너로 구성된 복잡한 애플리케이션 오케스트레이션
■ 클라우드 환경에서 슈퍼 유저 권한을 가진 컨테이너 사용
■ 콕핏으로 클라우드에 있는 컨테이너 관리
■ 도커 컨테이너 개발 방법
■ 공개된 도커파일을 통해 컨테이너 빌드 테크닉 학습
이 책의 대상 독자
이 책은 도커 컨테이너를 처음 접하는 이들에게 필요한 내용을 처음부터 끝까지 제공한다. 책을 다 읽은 후에도 레퍼런스로 삼아 도커 컨테이너에 관련된 세부 기능이나 옵션을 찾아볼 때 활용할 수 있다.
이 책의 구성
1부, ‘컨테이너와 친해지기’에서는 도커 컨테이너를 처음 다루는 데 필요한 사항을 배운다.
1장, ‘도커를 이용한 애플리케이션의 컨테이너화’에서는 컨테이너가 무엇인지, 컨테이너로 만들지 않은 애플리케이션과 어떻게 다른지 등에 대해 소개한다.
2장, ‘컨테이너 런타임 환경 구축하기’에서는 페도라와 우분투 같은 범용 리눅스 시스템에 도커를 설치하는 방법과 CentOS나 프로젝트 아토믹 같은 컨테이너 전용 리눅스 시스템에 도커를 설치하는 방법을 소개한다.
3장, ‘개인 도커 레지스트리 구축하기’에서는 자신이 직접 제작한 도커 이미지를 저장하는 개인 도커 레지스트리의 설정 방법을 소개하면서, 기본적인 컨테이너 설정 방법을 설명한다.
2부, ‘개별 컨테이너 다루기’에서는 도커 커맨드로 개별 컨테이너를 직접 다루는 방법을 중심으로 소개한다.
4장, ‘컨테이너 이미지 실행하기’에서는 컨테이너 이미지를 구동하는 방법을 소개한다.
5장, ‘컨테이너 이미지 검색하고 가져오고 저장하고 불러오기’에서는 도커 레지스트리에서 컨테이너 이미지를 검색하고, 원하는 이미지를 골라서 가져오고, 이를 파일로 저장하고, 다른 도커 시스템에 불러오는 방법을 소개한다.
6장, ‘이미지 태깅하기’에서는 이미지에 담긴 내용을 잘 드러내고, 이 정보를 이용해 이미지를 레지스트리에 올릴 수 있도록 이미지에 태그를 붙이는 방법을 소개한다.
7장, ‘컨테이너 자세히 들여다보기’에서는 도커 컨테이너와 이미지의 작동 원리에 대한 세부 사항을 살펴보기 위해 컨테이너나 이미지의 내부를 들여다보는 방법을 소개한다.
8장, ‘컨테이너 구동하고 멈추고 재구동하기’에서는 제목 그대로 컨테이너를 구동하고, 멈추고, 재구동하는 방법을 설명한다.
9장, ‘컨테이너 스토리지 설정하기’에서는 호스트의 디렉터리를 컨테이너 안에 마운트하는 방법을 중심으로 컨테이너 스토리지를 설정하는 방법을 설명한다.
10장, ‘컨테이너 네트워크 설정하기’에서는 도커 서비스에서 보편적으로 사용하는 디폴트 네트워킹을 설정하는 방법과 컨테이너를 구동하는 사용자가 개별 컨테이너에 네트워크 인터페이스를 설정하는 방법을 소개한다.
11장, ‘컨테이너 정리하기’에서는 도커 이미지를 생성하거나 구동한 후에 남은 캐시 데이터를 삭제하는 방법을 소개한다.
12장, ‘도커 이미지 빌드하기’에서는 도커 컨테이너를 직접 빌드하는 방법을 설명한다. 이 과정에서 컨테이너를 효율적으로 빌드하고 구동하는 방법을 소개한다.
3부, ‘클라우드 환경에서 컨테이너 구동하기’
13장, ‘SPC 이용하기’에서는 SPC(Super Privileged Containers)라 부르는 특수한 형태의 컨테이너를 구동하는 방법을 소개한다. SPC의 작동 방식을 설명하기 위해 RHEL 아토믹 시스템에서 다양한 관리 작업을 수행하는 이미지를 가져와서 살펴본다.
14장, ‘콕핏으로 클라우드 환경에서 컨테이너 관리하기’에서는 웹 기반 컨테이너 관리 도구인 콕핏을 사용해 클라우드나 로컬 환경에 존재하는 여러 호스트에 걸쳐 컨테이너를 관리하는 방법을 소개한다.
4부, ‘여러 개의 컨테이너 관리하기’에서는 오케스트레이션에 대해 소개한다.
15장, ‘쿠버네티스를 이용한 컨테이너 오케스트레이션’에서는 쿠버네티스 마스터와 노드 서비스를 하나의 시스템에서 구동하는 방법을 소개한다.
16장, ‘쿠버네티스 클러스터 생성하기’에서는 앞 장에서 살펴본 올인원 쿠버네티스 시스템에서 한 단계 더 나아가, 쿠버네티스 클러스터를 구축하는 방법을 소개한다. 이렇게 클러스터를 구축해두면, 애플리케이션을 컨테이너 포드 단위로 배포해 여러 노드에 분산된 컨테이너를 마스터 노드에서 관리할 수 있다.
5부, ‘컨테이너 개발하기’에서는 컨테이너를 효율적으로 빌드하기 위한 기법을 소개한다.
17장, ‘도커 컨테이너 개발하기’에서는 도커 컨테이너를 개발하는 데 유용한 여러 가지 팁과 테크닉을 소개한다.
18장, ‘도커파일 샘플 살펴보기’에서는 웹에 공개된 여러 가지 도커파일을 살펴보면서 컨테이너를 직접 빌드할 때 발생하는 문제를 다른 사람들은 어떻게 해결했는지 알아본다.
목차
목차
- 1부. 컨테이너와 친해지기
- 1장, 도커를 이용한 애플리케이션의 컨테이너화
- 2장, 컨테이너 런타임 환경 구축하기
- 3장, 개인 도커 레지스트리 구축하기
- 2부. 개별 컨테이너 다루기
- 4장, 컨테이너 이미지 실행하기
- 5장, 컨테이너 이미지 검색하고 가져오고 저장하고 불러오기
- 6장, 이미지 태깅하기
- 7장, 컨테이너 자세히 들여다보기
- 8장, 컨테이너 구동하고 멈추고 재구동하기
- 9장, 컨테이너 스토리지 설정하기
- 10장, 컨테이너 네트워크 설정하기
- 11장, 컨테이너 정리하기
- 12장, 도커 이미지 빌드하기
- 3부. 클라우드 환경에서 컨테이너 구동하기
- 13장, SPC 이용하기
- 14장, 콕핏으로 클라우드 환경에서 컨테이너 관리하기
- 4부. 여러 컨테이너 관리하기
- 15장, 쿠버네티스를 이용한 컨테이너 오케스트레이션
- 16장, 쿠버네티스 클러스터 생성하기
- 5부. 컨테이너 개발하기
- 17장, 도커 컨테이너 개발하기
도서 오류 신고
정오표
정오표
[p.49 : 2행 역자주]
docker-engine, docker.io로 설치하는 것은 예전 버전으로, 2017년 12월 20일 기준으로 docker-ce (community editon) 또는 docker-ee(enterprise-edition)로 설치해야 합니다. 즉, sudo apt-get install docker-ce로 실행해야 합니다. 사전 설정을 비롯해 정확한 설치 방법은 아래 링크를 참고해주세요. https://docs.docker.com/engine/installation/linux/docker-ce/debian/#install-docker-ce-1 (우분투, 일반 버전 기준)