본문 바로가기

추천 검색어

실시간 인기 검색어

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

컨테이너 이론부터 Travis CI, AWS 실습까지
위키북스 시스템 & 네트워크 시리즈 11
안재원 저자(글)
위키북스 · 2021년 11월 19일
6.3
10점 중 6.3점
(2개의 리뷰)
쉬웠어요 (100%의 구매자)
  • 따라하며 배우는 도커와 CI 환경 대표 이미지
    따라하며 배우는 도커와 CI 환경 대표 이미지
  • A4
    사이즈 비교
    210x297
    따라하며 배우는 도커와 CI 환경 사이즈 비교 189x241
    단위 : mm
01 / 02
MD의 선택 무료배송 이벤트 소득공제
10% 25,200 28,000
적립/혜택
1,400P

기본적립

5% 적립 1,400P

추가적립

  • 5만원 이상 구매 시 추가 2,000P
  • 3만원 이상 구매 시, 등급별 2~4% 추가 최대 1,400P
  • 리뷰 작성 시, e교환권 추가 최대 300원
배송안내
무료배송
배송비 안내
국내도서/외국도서
도서 포함 15,000원 이상 구매 시 무료배송
도서+사은품 또는 도서+사은품+교보Only(교보굿즈)

15,000원 미만 시 2,500원 배송비 부과

교보Only(교보배송)
각각 구매하거나 함께 20,000원 이상 구매 시 무료배송

20,000원 미만 시 2,500원 배송비 부과

해외주문 서양도서/해외주문 일본도서(교보배송)
각각 구매하거나 함께 15,000원 이상 구매 시 무료배송

15,000원 미만 시 2,500원 배송비 부과

업체배송 상품(전집, GIFT, 음반/DVD 등)
해당 상품 상세페이지 "배송비" 참고 (업체 별/판매자 별 무료배송 기준 다름)
바로드림 오늘배송
업체에서 별도 배송하여 1Box당 배송비 2,500원 부과

1Box 기준 : 도서 10권

그 외 무료배송 기준
바로드림, eBook 상품을 주문한 경우, 플래티넘/골드/실버회원 무료배송쿠폰 이용하여 주문한 경우, 무료배송 등록 상품을 주문한 경우
주문정보를 불러오는 중입니다.
기본배송지 기준
배송일자 기준 안내
로그인 : 회원정보에 등록된 기본배송지
로그아웃 : '서울시 종로구 종로1' 주소 기준
로그인정확한 배송 안내를 받아보세요!

이달의 꽃과 함께 책을 받아보세요!

1권 구매 시 결제 단계에서 적용 가능합니다.

해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.

북카드

키워드 Pick

키워드 Pick 안내

관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.

따라하며 배우는 도커와 CI 환경 상세 이미지
《따라하며 배우는 도커와 CI 환경》과 함께 더 쉽게, 더 깊이 있게 도커를 만나보세요!
이 책의 전반부에서는 도커 컨테이너와 도커 이미지가 무엇인지부터 도커 컴포즈까지 도커에 관해 알아봅니다. 다양한 도해와 함께 설명함으로써 도커를 더욱더 쉽게 이해할 수 있고, 깊이 있게 공부할 수 있습니다.

전반부에서 도커의 기본기를 탄탄하게 다진 후에, 이 책의 후반부에서는 두 가지 애플리케이션을 만들어 봅니다. 깃허브, Travis CI, AWS를 이용한 CI/CD 환경을 구축해보면서 실제 실무에서 도커를 어떻게 활용하는지 실습합니다. 깃허브, Travis CI, AWS를 사용한 경험이 없더라도 한 단계씩 차근차근 만들어 나가므로 부담 없이 공부할 수 있습니다.

작가정보

저자(글) 안재원

새로운 기술 배우기와 그 배운 기술을 공유하기를 좋아하는 평범한 개발자입니다. 유튜브와 인터넷 강의 사이트를 통해서 배운 지식을 공유하고 있습니다.

▣ 유튜브: https://bit.ly/johnahn_youtube

목차

  • ▣ 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 환경 구축

기본정보

상품정보 테이블로 ISBN, 발행(출시)일자 , 쪽수, 크기, 총권수, 시리즈명을(를) 나타낸 표입니다.
ISBN 9791158392864
발행(출시)일자 2021년 11월 19일
쪽수 356쪽
크기
189 * 241 * 26 mm / 799 g
총권수 1권
시리즈명
위키북스 시스템 & 네트워크 시리즈

Klover

구매 후 리뷰 작성 시, e교환권 200원 적립

10점 중 10점
/쉬웠어요
평소에 개발 환경하고 운영 환경이 어떻게 다른지 파이프라인을 돌릴때 어떤 일이 벌어지는지 파악하는데 어려움이 있었는데 책에 너무 명쾌하게 잘 나와있어서 책을 읽고 많이 레벨업 된 느낌이 들어서 너무 좋습니다. 책에 에러가 많아서 따라하기 힘들다는 리뷰가 있는데 굳이 따라 할 필요 없고 큰 그림 그리고 싶으신 분들은 고민 안하시고 사셔서도 될거 같습니다. 도커 관련 책 3권 정도 샀는데 그 중에 제일 맘에 들고 그 중에서 제일 핵심만 명료하고 깔끔하게 잘 쓴거 같습니다.
10점 중 2.5점
책 내용 따라만 쳐서는 에러가 무지 많이 나옵니다.react, node, mysql, nginx에 대한 선행 내용이 없으면 고칠 수 없고, 인프런에서 강의를 파는데 책이랑 똑같을 것 같아서 구매하진 않았어요. 3시간정도 에러 고치려고 했는데 도커 환경에서 뭐가 문제인지 개념적으로 설명된 책은 아니다 보니 조금 어렵습니다.

문장수집 (0)

문장수집 안내
문장수집은 고객님들이 직접 선정한 책의 좋은 문장을 보여주는 교보문고의 새로운 서비스입니다. 마음을 두드린 문장들을 기록하고 좋은 글귀들은 "좋아요“ 하여 모아보세요. 도서 문장과 무관한 내용 등록 시 별도 통보 없이 삭제될 수 있습니다.
리워드 안내
구매 후 90일 이내에 문장수집 작성 시 e교환권 100원을 적립해드립니다.
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
판매가 5,000원 미만 상품의 경우 리워드 지급 대상에서 제외됩니다. (2024년 9월 30일부터 적용)

구매 후 리뷰 작성 시, e교환권 100원 적립

이 책의 첫 기록을 남겨주세요.

교환/반품/품절 안내

상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

비상 초등 수학 이벤트
이벤트
  • sam x 한샘 [똑똑한sam]
  • 2025 1학기 대학교재전
01 / 02
TOP