도커, 컨테이너 빌드업! 이현룡 pdf 다운로드를 무료로 제공합니다 컨테이너 서비스를 위한 도커를 통해 오케스트레이션 도구인 스웜이나 쿠버네티스 운영, 클라우스 서비스까지 넘어가기 위해서는 무엇보다 도커의 구조와 기본 명령어 등의 활용을 제대로 이해해야 합니다
관련 책 pdf 모음
책 소개
컨테이너를 이용한 가상화는 리눅스 기반의 물리적 공간 격리가 아닌 프로세스 격리를 통해 경량의 이미지를 실행하고 서비스할 수 있는 컨테이너(container) 기술이다. 사전적 의미로 보면, 컨테이너는 특정 대상을 격리하는 공간을 뜻한다. 따라서 클라우드 서비스의 컨테이너는 애플리케이션을 구동하는 환경을 격리한 공간을 의미한다. 데브옵스(DevOps)는 단순하게 업무, 부서(팀), 방법론, 기술 형태로 제한하지 않는다. 업무적으로 상충관계(trade-off)에 있는 모든 형태에 적용할 수 있다. 예를 들어, 보안 강화를 위해 암호화 등의 추가 구성을 수행하면 일반적으로 서비스 품질 저하(처리 시간 증가 등)가 발생할 수 있다. 보안을 담당하는 사람과 품질 관리를 수행하는 사람 간 소통을 통해 절충과 좋은 서비스의 품질을 보장받을 수 있게 된다. 도커 작동 과정에서 눈여겨볼 것은 컨테이너 동작에 필요한 모든 내용을 사전에 코드로 작성하여 앤서블, 셰프, 베이그런트, 퍼핏과 같은 인프라 프로비저닝(provisioning) 도구로 자동화하게 되면 기업이 필요할 때마다 애플리케이션 및 서버 환경을 적은 비용으로 빠르게 개발, 배포, 확장할 수 있다는 것이다. 이러한 개념을 IaC(Infrastructure as Code, 코드로서의 인프라스트럭처)라고 한다. Dockerfile은 도커 이미지, 즉 필요로 하는 개발환경을 제공하기 위한 여러 가지 명령어들의 집합체다. 여기에 사용되는 명령어는 17개 정도이고, 각 명령어의 의미와 권장 사용 방법을 통해 최적의 인프라 환경을 제공할 수 있다. 명령어는 대소문자를 구분하지는 않지만 키워드 가독성을 위해 권장한다
도커, 컨테이너 빌드업! pdf 다운
머리말 viii
추천사 x
베타리더 후기 xiii
CHAPTER 01 클라우드 컴퓨팅 1
1.1 클라우드 컴퓨팅 개요 3
1.1.1 클라우드 컴퓨팅이란? 3
1.1.2 클라우드 컴퓨팅 구조 5
1.1.3 클라우드 컴퓨팅 제공 방식과 클라우드 서비스 종류 6
1.2 컨테이너 기술과 도커 10
1.2.1 가상머신과 컨테이너 10
1.2.2 도커 12
1.2.3 도커 맛보기: PWD 15
1.3 쿠버네티스 20
1.4 데브옵스 22
CHAPTER 02 도커 설치 25
2.1 도커 엔진 27
2.2 리눅스용 도커 엔진 설치 29
2.2.1 도커 설치 환경 29
2.2.2 Ubuntu 18.04에 패키지를 이용한 도커 커뮤니티 에디션(CE) 설치 31
2.2.3 CentOS 7에 패키지를 이용한 도커 커뮤니티 에디션(CE) 설치 35
2.3 윈도우/macOS용 도커 엔진 설치 37
2.3.1 윈도우/macOS용 도커 툴박스 설치 37
2.3.2 윈도우용 도커 엔진 설치 42
2.3.3 macOS용 도커 엔진 설치 45
2.4 도커 확인 46
2.4.1 도커 컨테이너 서비스 46
2.4.2 도커 정보 확인 48
CHAPTER 03 컨테이너 서비스를 위한 도커 활용 57
3.1 컨테이너 서비스 59
3.1.1 컨테이너 서비스란? 59
3.1.2 왜 도커 컨테이너 서비스일까? 60
3.2 도커 명령어 활용 62
3.2.1 도커 이미지 명령어 62
3.2.2 도커 컨테이너 명령어 81
3.2.3 도커 볼륨 활용 96
3.2.4 도커 컨테이너의 자원 사용에 대한 런타임 제약 108
3.2.5 도커 네트워크 118
3.2.6 도커 kill 명령과 초기화 148
CHAPTER 04 컨테이너 환경 구성을 위한 Dockerfile 구성 153
4.1 코드로 개발하는 컨테이너 인프라, Dockerfile 155
4.1.1 IaC와 Dockerfile 155
4.1.2 최적의 Dockerfile 만들기 156
4.2 Dockerfile 명령어와 이미지 빌드 157
4.2.1 Dockerfile 명령어 157
4.2.2 이미지 생성을 위한 Dockerfile 빌드 163
4.2.3 이미지 빌드 과정 173
4.3 Dockerfile을 활용한 다양한 이미지 생성 180
4.3.1 다양한 방법의 Dockerfile 작성 182
4.4 깃허브를 활용한 Dockerfile 코드 공유 197
4.4.1 깃허브 사용 198
4.4.2 도커 허브의 자동화된 빌드와 깃허브 201
4.5 개별 이미지 저장을 위한 프라이빗 레지스트리 구성 210
4.5.1 도커 레지스트리 컨테이너 211
4.5.2 도커 레지스트리 웹 GUI 컨테이너 연결 213
4.5.3 오픈 소스 컨테이너 레지스트리 소개 215
CHAPTER 05 도커 컴포즈 도구를 이용한 다중 컨테이너 애플리케이션 서비스 배포 217
5.1 도커 컴포즈 219
5.1.1 도커 컴포즈 설치 219
5.1.2 도커 컴포즈 야믈 코드 작성 224
5.1.3 도커 컴포즈 명령어 238
5.1.4 도커 컴포즈 애플리케이션 로드 밸런스 구성 246
CHAPTER 06 AWS 클라우드를 활용한 컨테이너 서비스 배포 251
6.1 AWS 클라우드 ECS 253
6.1.1 AWS 컨테이너 오케스트레이션 도구 253
6.1.2 AWS 클라우드 가입 254
6.2 AWS 클라우드 EC2 + Docker + ECR 구성해 보기 255
6.2.1 도커 컨테이너를 위한 서버 구성: AWS EC2 인스턴스 255
6.2.2 EC2 인스턴스에 도커 설치 및 테스트 264
6.2.3 AWS 기반의 이미지 저장소(ECR) 생성 269
6.3 AWS 클라우드 ECS 구성 워크숍 273
6.3.1 AWS ECS 워크숍: 작업 순서 273
6.3.2 AWS ECS 워크숍: 인프라 구성 275
6.3.3 AWS ECS 워크숍: AWS Cloud9 도구를 이용한 개발 환경 구성 297
6.3.4 AWS ECS 워크숍: 도커 이미지 저장소 ECR 구성 303
6.3.5 AWS ECS 워크숍: ECS 환경 구성 309
6.3.6 AWS ECS 워크숍: 웹 서비스 배포 테스트 325
APPENDIX 도커 스웜 모드 클러스터 활용 329
A.1 다중 호스트 기반의 도커 스웜 모드 클러스터 331
A.1.1 도커 스웜 모드 개요 331
A.1.2 도커 스웜 모드 오케스트레이션 도구의 주요 기능 331
A.2 도커 스웜 모드 클러스터 구성 334
A.2.1 도커 스웜 모드 구성을 위한 서버 구성 334
A.2.2 도커 스웜 모드 초기 연결 구성: swarm init와 swarm join 336
A.2.3 도커 스웜 모드 모니터링을 위한 구성 340
A.3 도커 스웜 모드 워크숍 347
A.3.1 도커 스웜 모드 워크숍 1: nginx를 이용한 서비스 컨테이너 배포와 관리 347
A.3.2 도커 스웜 모드 워크숍 2: 서비스 유지관리를 위한 기능 352
A.3.3 도커 스웜 모드 워크숍 3: 도커 스웜 스택을 이용한 애플리케이션 서비스 구성 360
찾아보기 366