이미 소장하고 있다면 판매해 보세요.
|
▣ 01장: 도커란?
1.1 도커를 사용하는 이유 ___도커를 사용하지 않을 때와 도커를 사용해 프로그램을 설치할 때 ___도커를 사용하지 않고 레디스 설치하기 ___도커를 사용해 레디스 설치하기 1.2 도커와 컨테이너 ___실 세계의 컨테이너 ___도커에서의 컨테이너 1.3 도커 이미지와 도커 컨테이너 1.4 도커 설치하기 ___도커 회원 가입하기 ___윈도우 환경에서 도커 설치하기 ___macOS 환경에서 도커 설치하기 1.5 도커를 사용할 때의 흐름 1.6 도커와 기존 가상화 기술의 차이점 ___가상화 기술이 나오기 전에 서버를 사용하던 방식 ___하이퍼바이저 기반의 가상화 기술 ___하이퍼바이저의 종류 ___더 자세하게 도커 컨테이너 살펴보기 ___Cgroup과 네임스페이스 1.7 도커 이미지로 도커 컨테이너 만들기 ___응용 프로그램을 실행하는 데 필요한 모든 것 ___도커 컨테이너가 생성되는 순서 1.8 Cgroup, 네임스페이스를 쓸 수 있는 이유 ▣ 02장: 기본적인 도커 클라이언트 명령어 2.1 도커 이미지의 내부 파일 구조 보기 - docker run ls 2.2 컨테이너 나열하기 - docker ps ___현재 실행 중인 컨테이너 나열 ___도커 컨테이너를 나열할 때 원하는 항목만 보기 ___모든 도커 컨테이너를 나열 2.3 도커 컨테이너의 생성과 실행 ___도커 컨테이너를 생성하고 실행하기 - docker run 〈이미지 이름〉 ___도커 컨테이너 생성하기 - docker create 〈이미지 이름〉 ___생성된 도커 컨테이너 실행하기 - docker start 〈컨테이너 ID/이름〉 2.4 도커 컨테이너 멈추기 ___도커 컨테이터를 우아하게 중지하기 - docker stop 〈컨테이너 ID/이름〉 ___도커 컨테이터를 즉시 중지하기 - docker kill 〈컨테이너 ID/이름〉 2.5 도커 컨테이너 삭제하기 - docker rm ___중지된 모든 컨테이너 삭제하기 - docker rm `docker ps -a -q` ___도커 이미지 삭제하기 - docker rmi 〈이미지 id〉 ___사용하지 않는 데이터 삭제하기 - docker system prune 2.6 실행 중인 컨테이너에 명령어 전달하기 - docker exec 2.7 레디스를 이용해 도커 컨테이너 이해하기 2.8 실행 중인 컨테이너에서 터미널 사용하기 - docker exec sh ___실행 중인 컨테이너에 셸 환경으로 접속하기 ___셸 환경으로 접속하기 ▣ 03장: 직접 도커 이미지 생성하기 3.1 도커 이미지를 생성하는 순서 ___도커 이미지는 어떻게 생성할까요? ___도커 이미지를 생성하는 순서 3.2 도커 파일(Dockerfile) 만들기 ___도커 파일이란? ___도커 파일 작성 방법 ___베이스 이미지란 무엇인가? ___도커 파일 작성하기 3.3 Buildkit 비활성화하기 ___Buildkit이란 무엇인가요? ___Buildkit을 이용했을 때의 차이점 ___Buildkit 비활성화하기 3.4 도커 파일로 도커 이미지 만들기 ___build 명령어는 무엇인가요? ___build 명령어로 이미지 빌드하기 ___빌드 과정 자세히 살펴보기 ___빌드 과정의 Step 2/2 자세히 보기 3.5 내가 만든 이미지에 기억하기 쉬운 이름 붙여주기 ___도커 이미지에 이름 붙여주기 - docker build -t ___이번 장에서 만들 Node.js 애플리케이션의 구조 ___도커를 이용해 Node.js 애플리케이션을 만드는 순서 ▣ 04장: 도커를 이용한 간단한 Node.js 애플리케이션 만들기 4.1 Node.js 애플리케이션 만들기 ___Node.js 설치하기 ___Node.js 앱 만들기 4.2 도커 파일 작성하기 ___작성한 도커 파일 자세히 살펴보기 ___왜 FROM 부분에 alpine 베이스 이미지가 아닌 node 이미지를 사용할까요? ___RUN 부분에 있는 npm install은 어떤 코드인가요? ___CMD부분에 있는 “node”, “server.js”는 무엇인가요? 4.3 package.json이 없다는 에러 메시지가 발생하는 이유 ___이미지를 빌드할 때 왜 package.json 파일이 없다고 나오나요? 4.4 생성한 이미지로 애플리케이션 실행 시 접근이 안 되는 이유 ___앞으로 컨테이너를 실행하기 위해 사용할 명령어 ___새롭게 추가된 부분은 무슨 뜻인가요? 4.5 작업 디렉터리 명시하기 ___WORKDIR 지시자는 무엇인가요? ___도커 컨테이너 안에 별도의 작업 디렉터리가 왜 있어야 하나요? ___COPY 지시자로 컨테이너 안으로 복사한 폴더와 파일 ___이렇게 파일과 폴더가 한 디렉터리에 섞이면 문제가 되나요? ___작업 디렉터리를 설정하는 방법 4.6 애플리케이션의 소스 코드 변경으로 다시 빌드할 때의 문제점 ___도커 환경에서 애플리케이션을 실행하는 순서 ___이미지를 새로 빌드하면서 생긴 2가지 문제점 4.7 애플리케이션의 소스 코드를 변경했을 때 이미지를 효율적으로 다시 빌드하기 ___COPY 지시자 부분을 바꾼 이유는 무엇일까요? ___COPY 지시자를 RUN 전후로 나눠 효율적으로 빌드하기 4.8 도커 볼륨 ___도커 볼륨(Docker Volume)은 무엇인가요? ___도커 볼륨은 어떻게 이용하나요? ___PWD(print working directory) ___도커 볼륨을 사용해 애플리케이션 실행하기 ▣ 05장: 도커 컴포즈 5.1 이번 장에서 만들 애플리케이션 ___이번 장의 학습 순서 5.2 Node.js와 레디스 구현하기 ___Node.js 애플리케이션 만들기 ___레디스란 무엇인가요? ___레디스의 장점은 무엇인가요? ___Node.js 환경에서 레디스를 사용하는 방법 ___도커 환경에서 레디스 클라이언트를 생성할 때 주의할 점 ___Node.js 애플리케이션에 레디스 코드 추가하기 5.3 Node.js를 실행할 컨테이너의 도커 파일 작성하기 ___도커 파일 작성하기 5.4 통신할 때 나타나는 에러 ___애플리케이션 실행 순서 5.5 도커 컴포즈 파일 작성하기 ___도커 컴포즈 파일은 확장자가 yaml이나 yml인데 이것은 무슨 파일인가요? ___도커 컴포즈의 파일 구조 5.6 도커 컴포즈 정지시키기 ▣ 06장: 단일 컨테이너를 활용한 애플리케이션 만들기 6.1 리액트 설치 및 애플리케이션 생성 ___리액트 애플리케이션 생성하기 6.2 리액트 애플리케이션을 위한 도커 파일 작성하기 ___개발 환경을 위한 도커 파일 작성하기 ___왜 이런 에러 메시지가 발생했을까요? 6.3 생성된 도커 이미지로 로컬에서 리액트 실행하기 6.4 도커 볼륨을 이용한 소스 코드 변경 ___COPY와 도커 볼륨의 차이점 복습 ___도커 볼륨을 사용해 애플리케이션 실행하기 6.5 도커 컴포즈로 좀 더 간단하게 애플리케이션 실행하기 ___도커 컴포즈를 이용해 애플리케이션 실행하기 6.6 리액트 애플리케이션 테스트하기 ___도커를 이용한 리액트 애플리케이션에서 테스트를 진행하려면 6.7 운영 환경을 위한 엔진엑스 ___개발 환경에서 리액트 애플리케이션이 실행되는 구조 ___운영 환경에서 리액트 애플리케이션이 실행되는 구조 ___왜 개발 환경의 서버와 운영 환경의 서버가 다른가요? 6.8 운영 환경의 도커 이미지를 위한 도커 파일 작성하기 ___개발 환경의 도커 파일과 운영 환경의 도커 파일 비교 ___운영 환경의 도커 파일 자세히 보기 ___BUILDER STAGE ___RUN STAGE ___운영 환경에서 리액트 애플리케이션 실행하기 6.9 운영 환경의 도커 컴포즈 파일 작성하기 ___운영 환경의 도커 컴포즈 파일 작성 ▣ 07장: 단일 컨테이너를 활용한 애플리케이션의 테스트와 배포 7.1 깃허브에 소스 코드 올리기 7.2 Travis CI에서 테스트하기 ___Travis CI란? ___Travis CI의 역할 ___Travis CI와 깃허브 연동 ___테스트를 위한 Travis CI 설정 파일 작성하기 - travis.yml ___travis.yml 파일 자세히 살펴보기 ___.travis.yml 파일 작성하기 7.3 AWS 알아보기 ___AWS의 서비스들 ___EC2란 무엇인가? (Elastic Compute Cloud) ___일래스틱 빈스톡이란 무엇인가? (Elastic Beanstalk) 7.4 일래스틱 빈스톡 환경과 애플리케이션 만들기 ___새로운 일래스틱 빈스톡 환경 만들기 ___트래픽이 많지 않을 때 ___트래픽이 많을 때 7.5 애플리케이션을 배포하기 위한 Travis CI 설정 파일 작성하기 ___배포와 관련된 Travis CI 설정 코드 7.6 Travis CI에서 AWS에 접근하기 위한 API 생성 ___소스 코드를 전달하기 위한 접근 요건 ___IAM(Identity and Access Management)이란? ___IAM 사용자 생성하기 ___API 키를 Travis CI 설정 파일에 작성하기 ___일래스틱 빈스톡 환경 종료하기 ▣ 08장: 다중 컨테이너를 활용한 애플리케이션의 개발 환경 구축 8.1 다중 컨테이너를 활용해 만들 애플리케이션의 구조 ___멀티 컨테이너 애플리케이션을 위한 전체적인 설계 ___엔진엑스의 프록시(Proxy) 기능을 이용한 설계 ___엔진엑스는 정적 파일만 제공하는 설계 ___애플리케이션의 구현 순서 8.2 Node.js로 애플리케이션의 백엔드 서버 구현하기 8.3 React.js로 애플리케이션의 프런트엔드 구현하기 8.4 리액트 애플리케이션을 위한 도커 파일 만들기 ___엔진엑스 설정 변경하기 8.5 노드 애플리케이션을 위한 도커 파일 만들기 8.6 개발 환경과 운영 환경의 데이터베이스 구성 ___개발 환경과 운영 환경의 데이터베이스를 나누는 이유는? ___데이터베이스의 구조 자세히 살펴보기 8.7 MySQL을 위한 도커 파일 만들기 ___MySQL을 위한 도커 파일 작성 8.8 엔진엑스를 위한 설정 파일과 도커 파일 만들기 ___프록시 기능을 위한 엔진엑스 설정 8.9 개발환경을 위한 도커 컴포즈 파일 작성하기 8.10 볼륨을 이용한 데이터베이스의 데이터 유지하기 ___도커 볼륨을 이용한 데이터 영속성 구조 ▣ 09장: 다중 컨테이너를 활용한 애플리케이션의 배포 9.1 테스트 및 배포 순서 살펴보기 ___1. 깃허브 원격 저장소에 소스 코드를 푸시합니다. ___2. Travis CI에서 깃허브에 푸시한 소스 코드를 가져와 테스트합니다. ___3. 빌드된 도커 이미지를 도커 허브로 푸시합니다. ___4. AWS 일래스틱 빈스톡에 애플리케이션을 배포합니다. 9.2 도커 환경의 MYSQL 정리하기 9.3 깃허브에 소스 코드 올리기 9.4 Travis CI에서 테스트하기 ___Travis CI에서 할 일들 ___Travis CI와 깃허브 연동 ___travis.yml 파일의 작성 순서 ___.travis.yml 파일 작성하기 ___Travis CI 사이트에서 환경 변수 만들기 ___Travis CI가 잘 작동하는지 확인 9-5 운영 환경을 위한 도커 컴포즈 파일 생성 ___도커 컴포즈 파일 생성 9.6 다중 컨테이너 애플리케이션을 위한 일래스틱 빈스톡 환경 생성 ___애플리케이션 생성 9.7 VPC와 보안 그룹 설정하기 ___왜 VPC와 보안 그룹을 설정해야 하나요? ___VPC란 무엇인가요? ___일래스틱 빈스톡 환경을 생성할 때 할당되는 기본 VPC 찾아보기 ___보안 그룹이란 무엇인가요? ___VPC와 보안 그룹을 이용해 EB 인스턴스와 RDS 통신 문제를 해결하는 방법은? 9.8 AWS RDS를 이용한 데이터베이스 생성하기 ___RDS를 이용한 데이터베이스 생성하기 9.9 데이터베이스 정보를 도커 컴포즈 파일에 명시해주기 ___데이터베이스의 엔드포인트 정보 확인하기 ___일래스틱 빈스톡의 환경 속성 설정하기 9.10 보안 그룹의 생성과 적용 ___보안 그룹 생성하기 ___보안 그룹 적용하기 ___MySQL 인스턴스에 새로 생성한 보안 그룹 적용하기 ___일래스틱 빈스톡 인스턴스에 새로 생성한 보안 그룹 적용하기 9.11 애플리케이션을 배포하기 위한 Travis CI 설정 파일 작성하기 ___지금까지 작성한 Travis CI 설정 코드 ___배포를 위해 추가할 Travis CI의 설정 코드 9.12 Travis CI에서 AWS에 접근하기 위한 API 키 생성 ___소스 코드를 전달하기 위한 접근 요건 ___IAM(Identity and Access Management)이란? ___IAM 사용자 생성하기 ___API 키를 Travis CI 설정 파일에 작성하기 9.13 애플리케이션이 잘 실행되는지 테스트하기 ___환경 종료하기 |
|
★ 이 책에서 다루는 내용★
◎ 기본적인 도커 클라이언트 명령어 ◎ 도커를 이용한 간단한 Node.js 애플리케이션 만들기 ◎ 단일 컨테이너를 활용한 애플리케이션 개발과 배포 ◎ 멀티 컨테이너를 활용한 애플리케이션 개발과 배포 ◎ 깃허브, Travis CI, AWS를 활용한 CI/CD 환경 구축 |