faialotaibi / DevOps-Bootacmp

10 stars 0 forks source link

DevOps-Bootacmp

Hi everyone, welcome to DevOps bootcamp. This repository contains informations, labs, homeworks, projects and lessons specific to your course.

Schedule

- Days Time Communication
Class Sun - Thurs 4PM - 9pm Discord: https://discord.tuwaiqadmin.com/invite/cm18ygzfm000bo4cdfmxvafyw

Unit 01 (Git & GitHub )

Topics
  • Git Basics

  • Git Branches

  • Git Merge and Rebase

  • Cherry Pick

  • Git Remotes

Unit 02 (Docker & Docker Compose )

Topics
  • Docker Images

  • Docker Containers

  • Docker Volumes

  • Docker Networking

  • Building Images with Docker

  • Docker Compose

Unit 03 (CI/CD using GitHub Actions )

Topics
  • CI/CD Concept

  • CI/CD Tools Exploring

  • Bash Scripting

  • GitHub Actions

Unit 04 (Alibaba Cloud )

Topics
  • Computing Services in Alibaba Cloud
  • Networking in Alibaba Cloud
  • Security in Alibaba Cloud
  • Using Terraform with Alibaba Cloud

Unit 05 (Amazon Web Services AWS )

Topics
  • Computing Services in AWS
  • Networking in AWS
  • Security in AWS
  • Using Terraform with AWS

Unit 06 (Google Cloud Platform GCP )

Topics
  • Computing Services in GCP
  • Networking in GCP
  • Security in GCP
  • Using Terraform with GCP

What We Expect From You

Graduation Requirements

Week Day Lesson Labs Homeworks & Additional Resources
Week1 1
  1. Introduction
  2. Git Overview
  3. Version Control Systems
  4. Install Git
  1. Intro to Git Course
Week1 2
  1. Basic commands: init, add, commit, log, status, diff, stash, .gitignore, tag, config
  2. Git Branches: git branch, checkout
  3. Git Merge: git merge, fast forward, three way merge, conflicts
  4. Git Merge and Rebase: rebase vs. merge
  1. Git Merge Lab
  2. Git Rebase Lab
  3. Git Rebase Lab 2
  1. Git Branches and Merge Course
  2. Git Rebase Course
Week1 3
  1. Git Cherry Pick
  2. Deep Dive: reset, revert and checkout
  3. Git Remote: clone, pull, push, fork, pull request
  4. Git Project
  1. Git Remote Lab
  1. Git Remote Course
  2. Review Git Course
  3. Git Cheat Sheet
Week2 1
  1. Virtualization vs. Containerization
  2. Docker and Docker Components Overview
  3. Docker Images Overview
  4. Docker Containers Overview
  5. Docker Volumes Overview
  6. Docker Networking Overview
  7. Docker Setup
  8. Docker Images and Containers in action:
    Docker Basic commands -> pull, run, ls, exec, exit, attach, kill, rm
  1. Lab
  1. Play with Docker Environment
  2. Intro to Docker Course
  3. Docker Cheat Sheet
Week2 2
  1. Dockerfile
  2. Core Concepts: build, tags, size
  3. Multi-stage build
  1. Practice COPY instruction
  2. Practice ENTRYPOINT instruction
  3. Practice WORKDIR instruction
  4. Practice RUN instruction
  5. Practice ARG instruction
  6. Lab: Dockerfile with Python Script
  7. Lab: Containerizing React App
  1. YAML Course
  2. Build and Share Docker Images Course
Week2 3
  1. Docker Deep Dive: OS Arch, caching, inspect, login, push
  1. Containerize Flask App
  2. Containerize Laravel App
Week2 4
  1. Docker Volumes in action
  2. Docker Networking in action
  1. Volumes Lab
  2. Volumes Lab
  3. Networks Lab
Week2 5
  1. Multi Container Application with Docker
  2. Multi Container Application with Docker Compose
  3. Docker and Docker Compose Project
  1. Lab
  1. Docker Compose Installation
Week3 1
  1. Introduction to CI/CD
  2. Overview of CI/CD Tools
    1. Jenkins
    2. CircleCI
    3. GitLab CI/CD
    4. GitHub Actions
  3. Pipeline Designing Techniques
  4. Overview of GitHub Actions
    1. Core components of GitHub Actions (Workflows, Jobs, Steps, Actions)
  5. Creating and Setting Up Your First Workflow
  6. GitHub Marketplace
  1. Research Task
  2. Pipeline Design Lab
  1. CI/CD Course 1
  2. CI/CD Course 2
  3. GitHub Actions Course 1
  4. GitHub Actions Course 2
  5. <
Week3 2
  1. GitHub workflow syntax
  2. Basics of Bash Scripting
  3. Flask App (with Test Job)
  4. C App (with Build Job)
  5. GO App (with Build Job)
  6. Typescript App (with Build and Test)
  1. Lab 1
  2. Lab 2
  1. Bash Course 1
  2. Bash Course 2
  3. Bash Course 3
  4. Bash Course 4
  5. Bash Course 5
  6. Bash Course 6
Week3 3
  1. Flask App
  2. Go App
  3. Typescript App
  4. Containerized Application with Git, Docker, and GitHub Actions Project
...
Week3 4
  1. Introduction to Cloud Computing
    1. Definition of cloud computing (IaaS, PaaS, SaaS)
    2. Cloud deployment models (Public, Private, Hybrid)
  2. Comparison of the Three Cloud Providers
    1. Alibaba Cloud
    2. AWS
    3. Google Cloud
  3. Setting up Accounts and Environments
  4. Computing Services in Alibaba Cloud
Week3 5
  1. Networking in Alibaba Cloud
  2. Security in Alibaba Cloud
Week4 1
  1. ECS with ApsaraDB RDS
  2. Introduction to Terraform
  3. Download Terraform
  4. Terraform Syntax
  5. Using Terraform with Alibaba Cloud
    1. Alibaba Provider in Terraform
    2. Hands-on: Diagram
... ...
Week4 2 ... ... ...
Week4 3 ... ... ...
Week4 4
  1. Alibaba Cloud with Terraform Lab
... ...
Week4 5
  1. Computing Services in AWS
... ...
Week5 1
  1. Networking in AWS
  2. Security in AWS
... ...
Week5 2
  1. Using Terraform with AWS
    1. AWS provider in Terraform
    2. Hands-on: Diagram
... ...
Week5 3
  1. AWS with Terraform Lab
... ...
Week5 4
  1. Computing Services in Google Cloud
... ...
Week5 5
  1. Networking in Google Cloud
  2. Security in Google Cloud
... ...
Week6 1
  1. Using Terraform with Google Cloud
    1. Google Cloud provider in Terraform
    2. Hands-on: [Diagram]()
...
  1. Google Cloud with Terraform Homework
Week6 2
  1. Capstone Project
Week6 3
  1. Capstone Project
Week6 4
  1. Capstone Project
Week6 5
  1. Capstone Project