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

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

실무에 꼭 필요한 도커와 CI 환경을 저와 함께 쉽고 간단하게 구축해보실까요?

Lecture Introduction
Difficulty
Easy
Category
Programming - Devops
Tag
AWS, 도커, Docker, TravisCI, React, Nodejs, MySQL
Target Audience
- CI 환경을 배우고 싶은 분
- 도커의 기본부터 차근차근 배우고 싶은 분
- 도커가 실무에서 어떻게 쓰이는지 배우고 싶은 분

도커 공부, 더 이상 미루지 마세요


구글의 지메일, 유튜브 뿐만 아니라
카카오, 페이팔 등 많은 서비스들이
도커를 도입하고 있습니다

점점 커지는 도커의 영향력, 왜일까요?

도커를 한번 이용해보면 도커의 영향력이
왜 이렇게 커지고 있는지 이해할 수 밖에 없습니다

특히 풀스택 개발자나 백엔드 서버 개발자
도커를 잘 알고 있으면 엄청난 플러스 요소가 되죠




도커 강좌에서는요,


도커가 어떻게 돌아가는지 깊은 배경지식부터
실무에서의 사용법, Travis CI와 도커 허브 뿐만 아니라
AWS 서비스들을 연결하여 CI 환경 구축까지
도커를 더욱 화려하게 쓰는 방법을 배울 겁니다


이번 강좌를 통해 여러분이 현재 개발 분야에서
굉장히 핫하고 사랑받는 CI 시스템과 도커에 대해
더욱 많이 알아가고 실제로 사용할 수 있었으면 합니다!

이후 이어질 쿠버네티스 강좌 또한 기대해주세요:D




도표를 통한 쉬운 이해


본 강좌는 매우 많은 도표 자료를 사용합니다

도커와 CI 시스템 자체가 많이 복잡하기 때문이죠


사실 도커를 말로만 설명하면 이해할 때
시각화를 따로 해야 한다는 단점이 있습니다


그런 불편함을 덜기 위해 복잡한 부분을
모두 도표화
하여 여러분이 보다
쉽게 이해할 수 있도록 준비했습니다









우리 함께 성장해가요😌



John Ahn

현재 평범하게 직장 생활 중인 개발자입니다

 파이썬과 PHP, Node.js, React, Redux 등을
사용하며 즐겁게 개발하고 있습니다


 

all Icon made by Freepik from www.flaticon.com 

Preview
Expand All
  • 01
    강좌 소개
  • 강좌 소개 영상
  • 02
    도커 기본
  • 도커를 쓰는 이유
    도커란 무엇인가?
    도커 이미지와 도커 컨테이너 정의
Curriculum
Expand All
  • 01
    강좌 소개
  • 강좌 소개 영상
    강의자료 참고하기_Github 주소
  • 02
    도커 기본
  • 도커를 쓰는 이유
    도커란 무엇인가?
    도커 이미지와 도커 컨테이너 정의
    MAC OS를 위한 도커 설치
    WINDOWS를 위한 도커 설치 (오픈 예정)
    Window Home 유저를 위한 도커 설치 (오픈 예정)
    도커를 사용할 때의 흐름
    도커와 기존 가상화 기술과의 차이를 통한 컨테이너 이해
    이미지로 컨테이너 만들기
    C-group, 네임스페이스를 도커 환경에서 쓸 수 없는 이유
  • 03
    기본적인 도커 클라이언트 명령어
  • 도커 이미지 내부 파일 구조 보기
    컨테이너들 나열하기
    도커 컨테이너의 생명주기
    Docker Stop vs Docker Kill
    컨테이너 삭제하기
    실행 중인 컨테이너에 명령어 전달
    레디스를 이용한 컨테이너 이해
    실행 중인 컨테이너에서 터미널 생활 즐기기
  • 04
    도커 이미지 직접 만들어보기
  • 도커 이미지를 생성하는 순서
    Dockerfile 만들기
    도커 파일로 도커 이미지 만들기
    내가 만든 이미지 기억하기 쉬운 이름 주기
  • 05
    도커를 이용한 간단한 Node.js 어플 제작
  • 섹션 설명
    Node.js 앱 만들기
    Dockerfile 작성하기
    Package.json 파일이 없다고 나오는 이유
    생성한 이미지로 어플리케이션 실행 시 접근이 되지 않는 이유
    Working Directory 명시해주기
    어플리케이션 소스 변경으로 다시 빌드하는 것에 대한 문제점
    어플리케이션 소스 변경으로 재빌드 시 효율적으로 하는 방법
    Docker Volume에 대하여
  • 06
    Docker Compose
  • Docker Compose란 무엇인가?
    어플리케이션 소스 작성하기
    Dockerfile 작성하기
    Docker Containers 사이 통신할 때 나타나는 에러
    Docker Compose 파일 작성하기
    Docker Composer로 컨테이너를 멈추기
  • 07
    간단한 어플 실제 배포해보기: 개발 환경
  • 섹션 설명
    리액트 앱 설치하기
    도커를 이용하여 리액트 앱 실행하기
    생성된 도커 이미지로 리액트 앱 실행해보기
    도커 볼륨을 이용한 소스 코드 변경
    도커 컴포즈로 좀 더 간단하게 앱 실행해보기
    리액트 앱 테스트하기
    운영 환경을 위한 Nginx
    운영 환경 도커 이미지를 위한 Dockerfile 작성하기
  • 08
    간단한 어플 실제 배포해보기: 테스트&배포
  • 섹션 설명 & Github에 소스 코드 올리기
    Trevis CI 설명
    Trevis CI 이용 순서
    .travis.yml 파일 작성부터 테스트까지
    AWS 알아보기
    Elastic Beanstalk 환경 구성하기
    .travis.yml 파일 작성하기 (배포 부분)
    Travis CI의 AWS 접근을 위한 API 생성
  • 09
    복잡한 어플 실제 배포해보기: 개발 환경
  • 섹션 설명
    Node JS 구성하기
    React JS 구성하기
    리액트 앱을 위한 도커 파일 만들기
    노드 앱을 위한 도커 파일 만들기
    DB에 관하여
    MySQL을 위한 도커 파일 만들기
    NGINX를 위한 도커 파일 만들기
    Docker Compose 파일 작성하기
    Docker Volume을 이용한 데이터베이스 유지하기
  • 10
    복잡한 어플 실제 배포해보기: 테스트&배포
  • 섹션 설명
    도커 환경의 MySQL 부분 정리하기
    Github에 소스 코드 올리기
    Travis CI steps
    .travis.yml 파일 작성하기
    Dockerrun.aws.json에 대해서
    Dockerrun.aws.json 파일 작성하기
    다중 컨테이너 앱을 위한 Elastic beanstalk 환경 생성
    VPC(Virtual Private Cloud)와 Security Group 설정하기
    MySQL을 위한 AWS RDS 생성하기
    Security Group 생성하기