코스 개요
도입
- 고급 Docker 개념 및 워크플로 소개
- 컨테이너화 원칙 및 사용 사례 복기
- Docker 용어 및 핵심 구성 요소
- 코스 목표 및 실습 환경 개요
Docker 기능 및 아키텍처 개요
- Docker 엔진 및 그 구성 요소
- Docker 클라이언트, 데몬, 이미지, 컨테이너 및 레지스트리
- Docker 아키텍처 및 컨테이너 수명 주기
- Docker Hub 및 사설 레지스트리
- 고급 사용자를 위한 Docker CLI 기초
- Docker 리소스 및 구성 관리
Docker 설정
- Docker Community Edition 설치
- Docker 환경 구성
- Docker 설치 확인
- 개발 및 테스트를 위한 Docker 구성
- Docker 구성 및 스토리지 관리
- Docker 환경 문제 해결 입문
직접 Docker 이미지 빌드하기
- Docker 이미지 및 레이어 이해
- 효과적인 Dockerfile 작성
- Dockerfile 지시문 및 모범 사례
- 빌드 컨텍스트 관리
- 이미지 빌드 및 태그 지정
.dockerignore사용- 이미지 크기 및 빌드 성능 최적화
- 이미지 버전 및 태그 관리
- 멀티스테이지 Docker 빌드
- 컨테이너 레지스트리에 이미지 발행
Docker Compose를 사용한 멀티컨테이너 Docker 애플리케이션 실행
- Docker Compose 소개
- Compose 파일로 서비스 정의
- 네트워크 및 볼륨 구성
- 환경 변수 관리
- 서비스 의존성 및 시작 순서
- 여러 서비스 실행 및 확장
- Compose를 사용한 애플리케이션 이미지 빌드
- 애플리케이션 구성 관리
- 멀티컨테이너 애플리케이션 디버깅
- Compose 모범 사례
수많은 Docker 애플리케이션 배포의 어려움
- 다중 호스트에 걸친 컨테이너 관리
- 애플리케이션 확장 및 가용성
- 서비스 디스커버리
- 로드 밸런싱
- 구성 및 시크릿 관리
- 영속적 스토리지 문제
- 대규모 모니터링 및 로깅
- 롤링 업데이트 및 애플리케이션 배포
- 컨테이너 및 호스트 장애 복원
컨테이너 오케스트레이션이 제어를 유지하는 데 도움이 되는 방법
- 컨테이너 오케스트레이션 소개
- 오케스트레이션의 이점 및 한계
- Docker Swarm, Kubernetes 및 기타 솔루션 비교
- 스케줄링 및 워크로드 관리
- 서비스 디스커버리 및 네트워킹
- 애플리케이션 확장 및 자가 치유
- 롤링 배포 및 롤백
- 리소스 관리 및 워크로드 격리
- 적절한 오케스트레이션 플랫폼 선택
실전 Kubernetes
- Kubernetes 아키텍처 및 핵심 구성 요소
- Pod, 노드, 클러스터
- 배포 및 ReplicaSets
- 서비스 및 서비스 디스커버리
- ConfigMaps 및 Secrets
- 네임스페이스 및 리소스 조직
- 애플리케이션 확장
- 롤링 업데이트 및 롤백
- Kubernetes 네트워킹 기초
- 영속적 스토리지
- 헬스 체크 및 애플리케이션 복원력
- Kubernetes에 Docker 애플리케이션 배포
- Kubernetes 워크로드 문제 해결
고급 Docker 네트워킹
- Docker 네트워킹 아키텍처
- Bridge, host, overlay 및 기타 네트워크 드라이버
- 컨테이너 간 통신
- 컨테이너와 외부 시스템 간 통신
- 사용자 정의 Docker 네트워크
- 네트워크 격리
- 서비스 디스커버리
- 포트 공개 및 노출
- 다중 호스트 환경에서의 네트워킹
- Docker 네트워킹 문제 해결
Docker 보안
- Docker 보안 기초
- 컨테이너 격리 및 보안 경계
- 적절한 권한으로 컨테이너 실행
- 컨테이너 내부의 사용자 및 권한 관리
- Linux capabilities 및 보안 제어
- Docker 이미지 보안
- 이미지 취약점 스캐닝
- 시크릿의 안전한 관리
- Docker 레지스트리 보안
- 네트워크 보안 및 격리
- Docker 데몬 보안
- 컨테이너 보안 모범 사례
Docker 애플리케이션을 위한 지속적 통합 워크플로 설정
- 컨테이너화 애플리케이션을 위한 CI 소개
- Docker 이미지 자동 빌드
- Docker 이미지 및 컨테이너의 자동화 테스트
- 이미지 태그 지정 및 버전 관리
- 소스 컨트롤과 Docker 빌드 통합
- 이미지 취약점 자동 스캐닝
- 레지스트리에 이미지 발행
- 빌드 아티팩트 관리
- 자동화 품질 체크 구현
- 반복 가능한 Docker CI 파이프라인 설계
기존 워크플로에 Docker 애플리케이션 통합
- 기존 개발 워크플로와 Docker 통합
- 기존 애플리케이션의 컨테이너화
- CI/CD 플랫폼과 Docker 통합
- 개발, 테스트, 스테이징, 프로덕션 환경 관리
- 자동화 배포 전략
- 환경 간 구성 관리
- 레지스트리 통합
- 배포 승인 및 릴리스 관리
- 애플리케이션 배포 모니터링
- 환경 간 일관성 유지
컨테이너 및 오케스트레이션 모범 사례
- 유지보수가 용이한 Docker 이미지 설계
- 컨테이너 시작 및 성능 최적화
- 컨테이너 수명 주기 관리
- 효과적인 리소스 배분
- 로깅 및 모니터링 전략
- 구성 및 시크릿 관리
- 고가용성 및 장애 허용
- 컨테이너화 애플리케이션 확장
- 안전한 컨테이너 배포
- 버전 관리 및 릴리스 전략
- 오케스트레이션 아키텍처 모범 사례
문제 해결
- 컨테이너 시작 실패 진단
- 애플리케이션 및 컨테이너 로그 조사
- 컨테이너 및 이미지 검사
- 네트워크 문제 해결
- 스토리지 및 볼륨 문제 해결
- 이미지 빌드 실패 진단
- Docker Compose 애플리케이션 문제 해결
- 리소스 및 성능 문제 조사
- Kubernetes 문제 해결 기초
- 실용적인 문제 해결 연습
요약 및 결론
- 핵심 Docker 개념 복기
- 이미지 생성 및 컨테이너 관리 복기
- 멀티컨테이너 애플리케이션 배포 복기
- 오케스트레이션 개념 및 Kubernetes 복기
- Docker 네트워킹 및 보안 복기
- CI/CD 통합 복기
- 컨테이너화 및 오케스트레이션 모범 사례
- 최종 실습 연습
- 질의 응답 및 토론
요건
- Docker 컨테이너를 활용한 이전 경험.
대상 독자층
- 개발자
- DevOps 엔지니어
- 시스템 관리자
회원 평가 (7)
트레이너의 폭넓은 지식과 실습 세션 중에 자발적으로 발생한 문제를 해결하는 능력이 인상적이었습니다. 또한, 연습문제들은 과정에서 다루는 주제들을 확실하게 이해하도록 충분히 구성되어 있습니다.
Cosmin - Ness Digital Engineering
코스 - Advanced Docker
기계 번역됨
첫날부터 깊이 있게 다루었지만, 도커 고급 교육인 만큼 더 깊이 있게 다룰 수 있었을 것 같습니다 (기본적인 도커 지식은 이미 있다고 가정합니다).
SORIN ROMAN - Ness Digital Engineering
코스 - Advanced Docker
기계 번역됨
트레이너는 매우 친절한 분이었으며, 체계적이고 논리적으로 모든 것을 설명했습니다. 연습을 위한 멋진 실습 과제가 있었습니다.
Andreas - Ness Digital Engineering
코스 - Advanced Docker
기계 번역됨
트레이닝은 모든 참가자의 경험에 맞게 적절한 속도로 진행되었습니다. 또한 이론적인 개념과 실습 과제 사이의 균형이 잘 이루어져 있습니다.
Laurentiu - Ness Digital Engineering
코스 - Advanced Docker
기계 번역됨
구조와 제시 방식이 인상적이었습니다. 저에게 이 훈련은 앱에서 도커 컨테이너, 그리고 쿠버네티스까지의 여정 같았습니다. 연습 문제들은 매력적이고 적절했습니다.
Andrei - Ness Digital Engineering
코스 - Advanced Docker
기계 번역됨
강좌가 간단하면서도 교육적이었다는 설명
Diana Martinez - AT&T
코스 - Advanced Docker
기계 번역됨
강사는 Docker에 대해 풍부한 경험이 있으며 그의 경험을 그룹과 나누는 것을 좋아합니다. DaDesktop은 작업하기 좋은 플랫폼입니다.
Ulises - AT&T
코스 - Advanced Docker
기계 번역됨