개발자를 위한 쉬운 도커 (컨테이너 기초부터 개발자에게 필요한 네트워크, 볼륨 개념과 다양한 실무 사례까지)

개발자를 위한 쉬운 도커 (컨테이너 기초부터 개발자에게 필요한 네트워크, 볼륨 개념과 다양한 실무 사례까지)

$28.14
Description
'기본 개념, 심화 개념, 실무 적용, 활용' 순으로 체계적으로 익히는, 개발자를 위한 도커 핵심 가이드!
현대 소프트웨어 개발에서는 쿠버네티스와 컨테이너 기술이 필수적입니다. 안정적이면서도 유연한 시스템을 구축하려면 컨테이너 기술에 대한 깊은 이해가 필요합니다.

이 책은 초보자가 쉽게 이해하고 따라갈 수 있도록 체계적으로 구성했습니다. 경험이 있는 개발자는 다양한 예제를 통해 컨테이너 기술을 실무에서 더욱 효과적으로 활용할 수 있습니다.
가상화 환경에서 네트워크와 볼륨 개념은 많은 개발자들에게 어려운 개념입니다. 이 책은 저자가 직접 제작한 시각 자료와 구조도를 활용해 이러한 개념을 직관적으로 설명합니다. 또한 이론적인 설명에 그치지 않고, 애플리케이션을 컨테이너화하는 단계별 실습을 통해 실무에서 활용하는 방법을 익힐 수 있습니다.

이 책을 통해 컨테이너 기술을 체계적으로 익히고, 클라우드 네이티브 환경에서 경쟁력을 갖춘 개발자로 성장할 수 있을 것입니다.
저자

황현우

컴퓨터공학을전공하고클라우드엔지니어로근무하며쿠버네티스와도커기반의인프라구축및운영을담당했으며,현재는AI애플리케이션개발자로활동하고있다.복잡한기술을초보자의눈높이에맞춰설명하는것을특기로삼아인프런에서‘개발자를위한쉬운리눅스’와‘개발자를위한쉬운도커’강의를통해많은개발자들의기술성장을돕는중이다.

목차

▣01장:도커시작하기
1.1실습환경정보
1.2윈도우에서실습환경구축하기
__1.2.1깃설치하기
__1.2.2도커데스크톱설치하기
__1.2.3VSCode설치하기
__1.2.4실습폴더생성하기
__1.2.5실습자료내려받기
1.3macOS에서실습환경구축하기
__1.3.1iTerm2설치하기
__1.3.2홈브루와깃설치하기
__1.3.3도커데스크톱설치하기
__1.3.4VSCode설치하기
__1.3.5실습폴더생성하기
__1.3.6실습자료내려받기
1.4실습가이드(윈도우,macOS공통)
__1.4.1실습명령어복사하기
__1.4.2브라우저시크릿창사용하기
__1.4.3모든컨테이너삭제하기

▣02장:가상화기술과컨테이너가상화
2.1서버
__2.1.1서버와클라이언트
__2.1.2서버의종류
__2.1.3엔터프라이즈환경의서버운영
2.2가상화기술
__2.2.1가상화기술과소프트웨어
__2.2.2가상화기술의경제성
2.3하이퍼바이저가상화
__2.3.1프로세스와OS
__2.3.2하이퍼바이저의역할
2.4컨테이너가상화
__2.4.1하이퍼바이저가상화vs.컨테이너가상화
2.5도커
__2.5.1도커의아키텍처
2.6컨테이너실행
__2.6.1웹서버

▣03장:이미지와컨테이너
3.1이미지
__3.1.1프로그램을실행하는데필요한요소
__3.1.2이미지
__3.1.3이미지를활용한컨테이너실행
3.2컨테이너
__3.2.1프로그램과프로세스
__3.2.2이미지와컨테이너
__3.2.3이미지와컨테이너의활용
3.3이미지와컨테이너의메타데이터
__3.3.1Cmd와Env값변경하기
__3.3.2dockerrun명령의-d옵션
3.4컨테이너의생명주기

▣04장:이미지레지스트리
4.1이미지레지스트리
__4.1.1이미지레지스트리의기능
__4.1.2이미지가저장되는공간
__4.1.3프라이빗레지스트리
4.2이미지이름규칙
4.3도커허브가입및이미지공유하기

▣05장:이미지빌드
5.1이미지와레이어
__5.1.1레이어구조의장점
__5.1.2레이어의구성원리
__5.1.3이미지와컨테이너의레이어
__5.1.4카피-온-라이트(Copy-On-Write;COW)
5.2이미지커밋
5.3이미지빌드
5.4빌드컨텍스트
__5.4.1.dockerignore파일을사용한파일제외
5.5도커파일지시어
__5.5.1envColorApp
__5.5.2envColorApp구성
__5.5.3애플리케이션빌드와이미지빌드
__5.5.4envColorApp소스코드
5.6멀티스테이지빌드
__5.6.1JavaHelloApp
__5.6.2JavaHelloApp소스코드
__5.6.3학습내용정리

▣06장:컨테이너애플리케이션
6.1클라우드
__6.1.1클라우드서버
__6.1.2퍼블릭클라우드와프라이빗클라우드
__6.1.3클라우드와공유경제
__6.1.4클라우드컴퓨팅의핵심요소:확장성,복원력,비용효율성
6.2클라우드네이티브
__6.2.1컨테이너
__6.2.2모놀리식과MSA
6.3리피애플리케이션
6.4리피애플리케이션이미지빌드하기
__6.4.1소스코드다운로드
__6.4.2PostgreSQL이미지빌드하기
__6.4.3백엔드애플리케이션이미지빌드하기
__6.4.4프런트엔드이미지빌드하기

▣07장:네트워크
7.1네트워크기본
__7.1.1네트워크
__7.1.2IP주소
__7.1.3공인IP와사설IP
__7.1.4네트워크인터페이스와포트
__7.1.5공인망과사설망
__7.1.6NAT와포트포워딩
__7.1.7DNS
7.2도커네트워크
__7.2.1브리지네트워크
__7.2.2가상네트워크와인터페이스
__7.2.3포트포워딩명령
__7.2.4도커의DNS
__7.2.5도커의네트워크종류
7.3리피네트워크

▣08장:볼륨
8.1컨테이너의상태와스테이트리스특성
__8.1.1컨테이너의스테이트리스특성
__8.1.2서버관리패러다임의변화:PetvsCattle
8.2애플리케이션현대화
__8.2.1컨테이너기반애플리케이션의특징
__8.2.2스테이트리스애플리케이션개발시고려사항
8.3도커볼륨
__8.3.1도커볼륨의필요성
__8.3.2도커볼륨의작동원리
__8.3.3도커볼륨활용
__8.3.4도커볼륨관리명령어
__8.3.5도커볼륨의마운트종류

▣09장:도커실무
9.1이미지관리
__9.1.1RUN지시어를활용한레이어최적화
9.2캐시를활용한빌드
__9.2.1레이어의캐시생성원리
__9.2.2캐시를활용한빌드최적화
9.33티어아키텍처구성
9.4환경변수를활용한동적서버설정
9.5이중화DB구성
9.6컨테이너애플리케이션최적화
__9.6.1리소스최적화
__9.6.2자바힙메모리최적화
9.7컨테이너를활용한개발환경구성

▣10장:도커컴포즈
10.1YAML파일
10.2도커컴포즈명령어

▣11장:도커와데브옵스
11.1데브옵스
__11.1.1CI/CD파이프라인
11.2깃허브액션
__11.2.1깃허브가입및소스코드포크
__11.2.2리피파이프라인소스확인
__11.2.3깃허브액션개념
__11.2.4워크플로문법
__11.2.5자주사용하는액션