logo
logo
x
바코드검색
BOOKPRICE.co.kr
책, 도서 가격비교 사이트
바코드검색

인기 검색어

실시간 검색어

검색가능 서점

도서목록 제공

따라하며 배우는 도커와 CI 환경

따라하며 배우는 도커와 CI 환경

(컨테이너 이론부터 Travis CI, AWS 실습까지)

안재원 (지은이)
위키북스
28,000원

일반도서

검색중
서점 할인가 할인률 배송비 혜택/추가 실질최저가 구매하기
25,200원 -10% 0원
1,400원
23,800원 >
25,200원 -10% 0원
0원
25,200원 >
yes24 로딩중
교보문고 로딩중
11st 로딩중
영풍문고 로딩중
쿠팡 로딩중
쿠팡로켓 로딩중
G마켓 로딩중
notice_icon 검색 결과 내에 다른 책이 포함되어 있을 수 있습니다.

중고도서

검색중
서점 유형 등록개수 최저가 구매하기
로딩중

eBook

검색중
서점 정가 할인가 마일리지 실질최저가 구매하기
로딩중

책 이미지

따라하며 배우는 도커와 CI 환경
eBook 미리보기

책 정보

· 제목 : 따라하며 배우는 도커와 CI 환경 (컨테이너 이론부터 Travis CI, AWS 실습까지)
· 분류 : 국내도서 > 컴퓨터/모바일 > OS/Networking > 네트워크 구축
· ISBN : 9791158392864
· 쪽수 : 356쪽
· 출판일 : 2021-11-19

책 소개

도커 컨테이너와 도커 이미지가 무엇인지부터 도커 컴포즈까지 도커에 관해 알아본다. 다양한 도해와 함께 설명함으로써 도커를 더욱더 쉽게 이해할 수 있고, 깊이 있게 공부할 수 있다.

목차

▣ 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 애플리케이션이 잘 실행되는지 테스트하기
___환경 종료하기

저자소개

안재원 (지은이)    정보 더보기
새로운 기술 배우기와 그 배운 기술을 공유하기를 좋아하는 평범한 개발자입니다. 유튜브와 인터넷 강의 사이트를 통해서 배운 지식을 공유하고 있습니다. ▣ 유튜브: https://bit.ly/johnahn_youtube
펼치기

책속에서



이 포스팅은 쿠팡 파트너스 활동의 일환으로,
이에 따른 일정액의 수수료를 제공받습니다.
이 포스팅은 제휴마케팅이 포함된 광고로 커미션을 지급 받습니다.
도서 DB 제공 : 알라딘 서점(www.aladin.co.kr)
최근 본 책