지은이 : 스즈키 료
별명은 호게 상. 어쩌다 들어간 대학의 정보통신 계열 학과에서 프로그래밍을 접한 후 정보통신 분야에 빠져들었다. 2012년 모 전자 메이커 대기업에 취직해서 백엔드 엔지니어로서 ISP 서비스 개발에 종사했다. 2021년 미라이토디자인으로 이직, 현재는 Zenn(엔지니어 정보 공유 커뮤니티)에 투고하거나 회사 유튜브 채널에 진지한 동영상이나 그렇지 못한 동영상을 공개하고 있다.
[1부 가상화와 도커 기본 지식]
1장 가상화
_1.1 물리 머신과 가상 머신
_1.2 가상화 소프트웨어 종류
_1.3 컨테이너형 가상화 특징
2장 도커와 주변 요소 살펴보기
_2.1 도커의 구성 요소
_2.2 컨테이너와 이미지 규격
3장 도커 설치
_3.1 윈도우에서 도커 사용하기
_3.2 맥OS에서 도커 사용하기
4장 도커 기본과 대원칙
_4.1 명령어와 프로세스
_4.2 컨테이너
_4.3 이미지
_4.4 도커파일
_4.5 명령어 기초 지식
_4.6 명령어 치트 시트
[2부 도커 컨테이너 활용법]
5장 컨테이너 기초 지식
_5.1 컨테이너 상태와 프로세스
_5.2 컨테이너 명령어
6장 컨테이너 기본 조작
_6.1 컨테이너 가동하기 container run
_6.2 컨테이너 목록 확인하기 container ls
_6.3 컨테이너 정지하기 container stop
_6.4 컨테이너 삭제하기 container rm
7장 루비 컨테이너로 인라인 실행하기
_7.1 컨테이너 가동 시 임의의 처리 실행하기 container run [COMMAND]
_7.2 컨테이너에 이름 붙이기 container run --name
_7.3 컨테이너 정지 시 자동으로 삭제하기 container run --rm
8장 파이썬 대화형 셸을 가동해서 컨테이너와 소통하기
_8.1 컨테이너를 대화형 모드로 조작하기 container run --interactive --tty
9장 Nginx 서버를 가동해서 브라우저에서 접속하기
_9.1 컨테이너 포트 공개하기 container run --publish
10장 MySQL 서버를 백그라운드로 가동하기
_10.1 컨테이너 환경 변수 설정하기 container run --env
_10.2 컨테이너를 백그라운드로 실행하기 container run --detach
11장 PostgreSQL 서버를 가동해서 이것저것 확인해 보기
_11.1 컨테이너 출력 확인하기 container logs
_11.2 가동 중인 컨테이너에 명령하기 container exec
_11.3 PostgreSQL 서버에 접속하는 방법 정리하기
[3부 도커 이미지 활용법]
12장 이미지의 기본 내용
_12.1 왜 이미지 조작을 이해해야 하는가?
_12.2 완전한 이미지명과 태그
_12.3 레이어와 메타데이터
_12.4 이미지 명령어
13장 이미지 기본 조작
_13.1 이미지 목록 확인하기 image ls
_13.2 이미지 취득하기 image pull
_13.3 이미지 상세 내용 확인하기 image inspect
14장 다른 버전의 MySQL 서버 가동하기
_14.1 도커 허브에서 이미지 찾기
_14.2 컨테이너 가동 시 이미지 태그 지정하기
15장 vi를 설치한 우분투 이미지를 작성하고 공유하기
_15.1 컨테이너에 vi 설치하기
_15.2 컨테이너 이미지화하기 container commit
_15.3 컨테이너를 tar로 이미지화하기 container export + image import
_15.4 이미지를 tar로 만들고 다시 이미지화하기 image save + image load
[4부 도커파일 활용법]
16장 도커파일 기초
_16.1 도커파일이 필요한 이유
_16.2 도커 허브의 레이어 정보 해석하기
_16.3 도커파일 명령 목록
17장 vi를 사용할 수 있는 우분투 이미지 만들기
_17.1 베이스 이미지 지정하기 FROM
_17.2 도커파일로 이미지 빌드하기 image build
_17.3 명령어를 실행해서 레이어 확정하기 RUN
18장 시간대와 로그 출력이 설정된 MySQL 이미지 만들기
_18.1 이미지 환경 변수 지정하기 ENV
_18.2 호스트머신의 파일을 이미지에 추가하기 COPY
19장 가동할 때 웹서버를 실행하는 파이썬 이미지 만들기
_19.1 컨테이너 가동 시 명령어 지정하기 CMD
[5부 고급 도커 컨테이너 활용법]
20장 볼륨과 네트워크 기초
_20.1 볼륨
_20.2 네트워크
21장 MySQL 컨테이너 데이터가 사라지지 않게 만들기
_21.1 볼륨 작성하기 volume create
_21.2 컨테이너 가동할 때 볼륨 마운트하기 container run --mount
22장 호스트머신에서 편집한 파일을 루비 컨테이너에서 실행하기
_22.1 바인드 마운트 이용하기 container run --mount
_22.2 볼륨과 바인드 마운트의 차이점
23장 PHP 컨테이너에서 MySQL 컨테이너와 통신하기
_23.1 네트워크 작성하기 network create
_23.2 컨테이너 가동 시 네트워크에 접속하기 container run --network
_23.3 기본 브릿지 네트워크를 사용한 컨테이너 통신
[6부 고급 도커 컨테이너 활용법]
24장 구성 정리하기
_24.1 앞으로 만들 웹 서비스
_24.2 구성 정리하기
_24.3 이 장의 정리
25장 필요한 이미지 준비하기
_25.1 디렉터리 작성
_25.2 DB 이미지 정리하기
_25.3 메일 이미지 정리하기
_25.4 앱 이미지 준비하기
_25.5 이 장의 정리
26장 컨테이너 이외의 리소스 준비하기
_26.1 앱 컨테이너 정리하기
_26.2 DB 컨테이너 정리하기
_26.3 메일 컨테이너 정리하기
_26.4 이 장의 정리
27장 컨테이너 가동
_27.1 앱, DB, 메일 컨테이너 가동
_27.2 브라우저 확인하기
28장 도커 컴포즈 이용
_28.1 도커 컴포즈 기초
_28.2 docker 명령어를 compose.yaml로 이식하기
_28.3 도커 컴포즈 기본 조작
[7부 운영 시 주의할 점과 트러블슈팅]
29장 도커 데스크톱 유료 플랜과 도커 계정
_29.1 도커 데스크톱 유료 플랜
_29.2 도커 계정
30장 프로젝트에서 도커 사용하기
_30.1 환경 변수로 compose.yaml 값을 매개변수로 만들기
_30.2 .dockerignore로 빌드할 때 사용할 파일 제외하기
_30.3 여러 도커 컴포즈 파일 합치기
31장 애플 실리콘 맥에서 도커 사용하기
_31.1 명령어 집합 구조
_31.2 서로 다른 ISA의 도커 실행 환경 공존하기
32장 디버깅 방법
_32.1 현재 상태 정리하기
_32.2 문제 발생 범위 좁히기
도서 DB 제공 - 알라딘 인터넷서점 (www.aladin.co.kr)