直近6か月以内に本講座のレビューに関して記載された記事はありません。
This course is neither endorsed by, nor in partnership, nor affiliated with GitLab, Inc.
SPECIFIC SKILLS YOU WILL LEARN
Pipeline Development - Create multi-stage GitLab CI/CD pipelines using YAML configuration. Configure automated unit testing with JUnit reports. Implement parallel job execution. Use conditional job execution with rules. Manage job dependencies and artifacts. Configure before_script and after_script hooks. Troubleshoot pipeline failures using exit codes.
Continuous Integration Practices - Configure merge request workflows with branch protection. Implement code review processes before merging. Add automated code linting for quality enforcement. Run unit tests before allowing merges. Generate and publish test reports. Implement smoke tests for deployment verification. Configure end-to-end testing with Playwright.
Docker Integration - Select appropriate Docker images for build environments (Alpine, slim variants). Create custom Dockerfile for applications. Build and tag Docker images in GitLab pipelines. Push images to GitLab Container Registry and Amazon ECR. Use Docker containers as pipeline job execution environments.
Deployment Strategies - Create deployment pipelines for multiple environments. Configure environment-specific variables and secrets. Implement manual approval gates for production deployments. Create dynamic review environments for merge requests. Deploy applications to remote servers using SSH, SCP, and rsync. Configure SSH key authentication and host verification. Run deployment scripts on remote servers.
AWS Cloud Deployment - Install and configure AWS CLI for infrastructure automation. Deploy static websites to Amazon S3 with bucket configuration and file syncing. Create and manage AWS IAM users and roles for secure credential management. Deploy containerized applications to Amazon ECS using Fargate and EC2 launch types. Create ECS task definitions and services. Update ECS deployments using AWS CLI. Store Docker images in Amazon ECR.
Pipeline Optimization - Implement caching strategies to speed up builds. Configure cache keys (static, dynamic, file-based). Manage artifact dependencies between jobs. Use stageless pipelines with the needs keyword. Skip repository cloning when not needed using GIT_STRATEGY. Optimize Docker image selection for faster execution.
Security and Secrets Management - Store credentials securely using GitLab CI/CD variables. Scope variables to specific environments. Follow best practices for handling sensitive data. Configure SSH private keys for deployment. Manage AWS access keys and secret keys safely.
COURSE STRUCTURE
Section 1 (21 lectures) - GitLab CI/CD fundamentals, DevOps concepts, pipeline architecture, YAML syntax, first pipeline creation, GitLab Runner understanding, Linux shell basics, exit codes.
Section 2 (25 lectures) - Continuous Integration with Docker build environments, automated testing, parallel execution, JUnit reports, merge request workflows, code linting, artifact publishing.
Section 3 (33 lectures) - Continuous Deployment to multiple environments, environment variables, secrets management, deployment strategies (manual, staging, production), review environments, Playwright E2E testing, HTML reports.
Section 4 (9 lectures) - Docker for DevOps including Dockerfile creation, Docker CLI in GitLab, building and pushing images, GitLab Container Registry, scheduled pipelines.
Section 5 (11 lectures) - AWS deployment using S3 static hosting, AWS CLI usage, IAM credential management, file uploading and syncing to S3.
Section 6 (12 lectures) - SSH deployment to Amazon EC2, Nginx web server setup, SSH connection configuration, SCP and rsync file transfers, remote script execution.
Section 7 (15 lectures) - Amazon ECS deployment including cluster creation, task definitions, service configuration, ECR integration, automated deployment updates, sed for file templating.
Section 8 (11 lectures) - Advanced features including job retry, allow_failure, YAML anchors and aliases, job templates, extends keyword, includes for configuration reuse, CI/CD components, multi-line scripts, background processes, GitLab Pages, runner tags.
Section 9 (12 lectures) - Performance optimization including GIT_STRATEGY options, disabling artifact downloads, stageless pipelines with needs, cache configuration (keys, policies, troubleshooting), cache vs artifacts comparison.
Section 10 (1 lecture) - User questions and specific topics.
Section 11 (3 lectures) - Course conclusion and bonus content.
PRACTICE COMPONENTS
The course includes quizzes testing fundamental concepts, GitLab architecture, Docker integration, merge requests, deployment environments, and CI/CD best practices. Practice labs cover Linux commands, environment variables, curl for smoke testing, and JSON parsing with jq. Role-play exercises simulate real DevOps scenarios. Assignments include publishing build artifacts, adding test stages, publishing test reports, and managing AWS credentials with step-by-step solutions provided.
WORKPLACE APPLICATIONS
Automate manual deployment processes that are error-prone and time-consuming. Maintain consistent environments across development, staging, and production using Docker containers. Integrate AWS cloud services with CI/CD pipelines. Implement automated testing before code merges to prevent production bugs. Optimize pipeline execution speed to improve developer productivity. Establish deployment approval workflows for production releases. Create ephemeral review environments for feature branch testing. Implement infrastructure-as-code practices for reproducible deployments.
LEARNING APPROACH
This course provides foundational knowledge in GitLab CI/CD rather than promising instant expertise. It focuses on clear explanations of CI/CD concepts, step-by-step pipeline building guidance, practical examples applicable to real projects, troubleshooting common issues, and best practices for security, performance, and maintainability. The course emphasizes hands-on learning through building actual pipelines rather than theoretical knowledge alone.
COMPLEMENTARY SKILLS
This course connects to broader DevOps practices including infrastructure automation, containerization strategies, cloud architecture, automated testing methodologies, continuous delivery vs continuous deployment, version control workflows, and deployment pattern implementations. Skills learned apply to GitLab CI/CD specifically but transfer to understanding Jenkins, GitHub Actions, CircleCI, and other CI/CD platforms.
EXPECTED OUTCOMES AFTER COMPLETION
You will be able to create GitLab CI/CD pipelines from scratch for your projects. You will automate testing, building, and deployment workflows. You will deploy applications to AWS cloud infrastructure using multiple services. You will implement merge request workflows with automated quality checks. You will configure secure credential management for cloud deployments. You will optimize pipeline performance for faster execution. You will troubleshoot and debug pipeline failures independently. You will apply CI/CD best practices in professional development environments.
WHAT YOU WILL BUILD
Production-ready CI/CD pipelines that automate software testing, building, and deployment from code commit to production release across multiple environments (development, staging, production).
PREREQUISITES
Basic Git version control knowledge (commits, branches, push, pull). Familiarity with command-line interfaces and Linux/Unix terminal basics. Basic programming or scripting knowledge in any language. Docker experience, cloud platform knowledge, and software development workflow understanding are helpful but not required.
TARGET LEARNERS
Software Developers, DevOps Engineers, Site Reliability Engineers (SRE), System Administrators, Cloud Engineers seeking to automate testing, building, and deployment workflows.
CORE TECHNOLOGIES COVERED
GitLab CI/CD pipelines, YAML configuration, Docker containers, AWS S3, AWS ECS, AWS ECR, AWS IAM, AWS CLI, Amazon EC2, SSH deployment, SCP, rsync, Playwright end-to-end testing, JUnit test reports, GitLab Container Registry, GitLab Runner, merge request workflows, code linters, pipeline optimization, caching strategies, environment variables, secrets management.
本コースの特徴を単語単位でまとめました。以下の単語が気になる方は、ぜひ本講座の受講をオススメします。
本講座を受講した皆さんの感想を以下にまとめます。
・新入社員に向けて私が3年間で受講したUdemyの講座を紹介する[2024-05-29に投稿]