diff --git a/sessions/Tracks/DevOps/README.md b/sessions/Tracks/DevOps/README.md new file mode 100644 index 0000000..90672c4 --- /dev/null +++ b/sessions/Tracks/DevOps/README.md @@ -0,0 +1,95 @@ +# ⚙️ DevOps + +This repository contains the materials and resources for the **DevOps track**. + +## 📚 Sessions + +### Session 1 — Introduction to DevOps + +* What is DevOps? +* Problems DevOps solves +* DevOps culture and practices +* DevOps roles and career paths +* Essential DevOps terminology +* DevOps workflow and lifecycle +* Containerization +* GitHub Actions & CI/CD +* Linux & DevOps +* Introduction to Kubernetes + +📁 **[Session 1 Folder](./Tracks/DevOps/Session1/)** + +--- + +### Session 2 — Docker Fundamentals + +* Virtual Machines vs Containers +* Docker overview +* Docker Images & Containers +* Basic Docker commands +* `docker run` +* Image tags +* Container Management +* Interactive containers +* `docker exec` +* Hands-on practice + +📁 **[Session 2 Folder](./Tracks/DevOps/Session2/)** + +📝 **[Task](https://gist.github.com/221ee9b7f064f7ed4e4f0c132eec00eb.git)** + +--- + +### Session 3 — Docker Advanced + +* Dockerfile +* Building Docker images +* Dockerfile Instructions +* `CMD` vs `ENTRYPOINT` +* Image layers +* Docker Inspect +* Environment variables +* Port & volume mapping +* Docker Networking +* YAML basics +* Docker Compose +* Multi-container applications + +📁 **[Session 3 Folder](./Tracks/DevOps/Session3/)** + +📝 **[Task](https://gist.github.com/a42442c7d97233d8c0dfea0caba27dd5.git)** + +--- + +### Session 4 — CI/CD & GitHub Actions + +* CI/CD concepts +* Continuous Integration +* Continuous Delivery / Deployment +* GitHub Actions +* Workflows, Jobs, Steps & Runners +* Workflow triggers +* YAML workflow +* Environment variables +* Conditional execution +* Job dependencies +* Automated testing and deployment +* NGINX +* Reverse Proxy +* Load Balancing +* NGINX configuration +* Application deployment + +📁 **[Session 4 Folder](./Tracks/DevOps/Session4/)** + +--- + +## 🛠️ Technologies + +* Linux +* Git & GitHub +* Docker +* Docker Compose +* GitHub Actions +* NGINX + diff --git a/sessions/trackes/devops/session1/DevOps_Session1.pdf b/sessions/Tracks/DevOps/Session1/DevOps_Session1.pdf similarity index 100% rename from sessions/trackes/devops/session1/DevOps_Session1.pdf rename to sessions/Tracks/DevOps/Session1/DevOps_Session1.pdf diff --git a/sessions/Tracks/DevOps/Session2/Docker-Session1-2026.pdf b/sessions/Tracks/DevOps/Session2/Docker-Session1-2026.pdf new file mode 100644 index 0000000..9cc93e9 Binary files /dev/null and b/sessions/Tracks/DevOps/Session2/Docker-Session1-2026.pdf differ diff --git a/sessions/Tracks/DevOps/Session3/Docker-Session-2.pdf b/sessions/Tracks/DevOps/Session3/Docker-Session-2.pdf new file mode 100644 index 0000000..fb23036 Binary files /dev/null and b/sessions/Tracks/DevOps/Session3/Docker-Session-2.pdf differ diff --git a/sessions/Tracks/DevOps/Session4/App/backend/Dockerfile b/sessions/Tracks/DevOps/Session4/App/backend/Dockerfile new file mode 100755 index 0000000..5ff903d --- /dev/null +++ b/sessions/Tracks/DevOps/Session4/App/backend/Dockerfile @@ -0,0 +1,11 @@ +FROM node:18-alpine + +WORKDIR /usr/src/app + +COPY package*.json ./ +RUN npm install --production + +COPY . . + +EXPOSE 3000 +CMD [ "npm", "start" ] diff --git a/sessions/Tracks/DevOps/Session4/App/backend/package.json b/sessions/Tracks/DevOps/Session4/App/backend/package.json new file mode 100755 index 0000000..1b7e4ee --- /dev/null +++ b/sessions/Tracks/DevOps/Session4/App/backend/package.json @@ -0,0 +1,12 @@ +{ + "name": "demo-backend", + "version": "1.0.0", + "main": "server.js", + "scripts": { + "start": "node server.js" + }, + "dependencies": { + "express": "^4.18.2", + "cors": "^2.8.5" + } +} diff --git a/sessions/Tracks/DevOps/Session4/App/backend/server.js b/sessions/Tracks/DevOps/Session4/App/backend/server.js new file mode 100755 index 0000000..6c9aa24 --- /dev/null +++ b/sessions/Tracks/DevOps/Session4/App/backend/server.js @@ -0,0 +1,22 @@ +const express = require('express'); +const cors = require('cors'); + +const app = express(); +const PORT = process.env.PORT || 3000; + +app.use(cors()); +app.use(express.json()); + +app.post('/api/greet', (req, res) => { + const name = req.body.name; + if (!name) { + return res.status(400).json({ error: 'Name is required' }); + } + + const greeting = `Hello, ${name}! Welcome to our CI/CD Demo.`; + res.json({ message: greeting }); +}); + +app.listen(PORT, () => { + console.log(`Backend server running on port ${PORT}`); +}); diff --git a/sessions/Tracks/DevOps/Session4/App/docker-compose.yml b/sessions/Tracks/DevOps/Session4/App/docker-compose.yml new file mode 100755 index 0000000..90e3ce7 --- /dev/null +++ b/sessions/Tracks/DevOps/Session4/App/docker-compose.yml @@ -0,0 +1,20 @@ +services: + backend: + build: ./backend + expose: + - "3000" + + frontend: + build: ./frontend + expose: + - "80" + + nginx: + image: nginx:alpine + volumes: + - ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf:ro + ports: + - "8080:80" + depends_on: + - frontend + - backend diff --git a/sessions/Tracks/DevOps/Session4/App/frontend/Dockerfile b/sessions/Tracks/DevOps/Session4/App/frontend/Dockerfile new file mode 100755 index 0000000..a455434 --- /dev/null +++ b/sessions/Tracks/DevOps/Session4/App/frontend/Dockerfile @@ -0,0 +1,7 @@ +FROM nginx:alpine + +# Copy static frontend files to Nginx default html directory +COPY index.html /usr/share/nginx/html/ + +EXPOSE 80 +CMD ["nginx", "-g", "daemon off;"] diff --git a/sessions/Tracks/DevOps/Session4/App/frontend/index.html b/sessions/Tracks/DevOps/Session4/App/frontend/index.html new file mode 100755 index 0000000..bc8022b --- /dev/null +++ b/sessions/Tracks/DevOps/Session4/App/frontend/index.html @@ -0,0 +1,95 @@ + + + + + + CI/CD Demo App + + + +
+

Welcome!

+

Enter your name below to call the backend API.

+ + +
+
+ + + + diff --git a/sessions/Tracks/DevOps/Session4/App/nginx/nginx.conf b/sessions/Tracks/DevOps/Session4/App/nginx/nginx.conf new file mode 100755 index 0000000..25ef49d --- /dev/null +++ b/sessions/Tracks/DevOps/Session4/App/nginx/nginx.conf @@ -0,0 +1,12 @@ +server { + listen 80 default_server; + server_name localhost; + + location / { + proxy_pass http://frontend:80; + } + + location /api/ { + proxy_pass http://backend:3000; + } +} \ No newline at end of file diff --git a/sessions/Tracks/DevOps/Session4/attachments/.Rhistory b/sessions/Tracks/DevOps/Session4/attachments/.Rhistory new file mode 100644 index 0000000..e69de29 diff --git a/sessions/Tracks/DevOps/Session4/attachments/CICD_Pipleine.webp b/sessions/Tracks/DevOps/Session4/attachments/CICD_Pipleine.webp new file mode 100755 index 0000000..bb80ee3 Binary files /dev/null and b/sessions/Tracks/DevOps/Session4/attachments/CICD_Pipleine.webp differ diff --git a/sessions/Tracks/DevOps/Session4/attachments/development_deploy.jpg b/sessions/Tracks/DevOps/Session4/attachments/development_deploy.jpg new file mode 100755 index 0000000..8454400 Binary files /dev/null and b/sessions/Tracks/DevOps/Session4/attachments/development_deploy.jpg differ diff --git a/sessions/Tracks/DevOps/Session4/attachments/presentation 2026-07-17 20.49.57.excalidraw.md b/sessions/Tracks/DevOps/Session4/attachments/presentation 2026-07-17 20.49.57.excalidraw.md new file mode 100755 index 0000000..b596d25 --- /dev/null +++ b/sessions/Tracks/DevOps/Session4/attachments/presentation 2026-07-17 20.49.57.excalidraw.md @@ -0,0 +1,546 @@ +--- + +excalidraw-plugin: parsed +tags: [excalidraw] + +--- +==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving' + + +# Excalidraw Data + +## Text Elements +Development ^Rtam25Id + +F1 ^6TzkO5cJ + +f2 ^L2URCoM5 + +Integration ^CUdlzBcc + +1. Install Dependencies +2. build containers +2. run tests (unit test + integration test, + security checks) ^mJ8Mh5b1 + +Deployment ^bWSP7NMf + +1. setup environment +2. pull and run containers +.... based on deployment way (aws, MS..etc) ^Sfaw9mjg + +Finding issue ^8MnWzqLB + +find the responsible developer to solve ^G1FERNF6 + +Finding Issue ^V4LFXlL2 + +%% +## Drawing +```compressed-json +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 + +H0cABj9ApAgAA=== +``` +%% \ No newline at end of file diff --git a/sessions/Tracks/DevOps/Session4/github-actions.css b/sessions/Tracks/DevOps/Session4/github-actions.css new file mode 100755 index 0000000..831600d --- /dev/null +++ b/sessions/Tracks/DevOps/Session4/github-actions.css @@ -0,0 +1,99 @@ +/* @theme github-actions */ +@import 'default'; + +section { + background-color: #ffffff; + color: #24292f; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif; + padding: 50px 70px; + font-size: 28px; +} + +/* Header accent bar */ +section::before { + content: ''; + position: absolute; + top: 0; + left: 0; + right: 0; + height: 8px; + background: linear-gradient(90deg, #0969da, #2ea043, #e34c26, #8250df); +} + +h1, h2, h3 { + color: #24292f; + font-weight: 700; +} + +h1 { + border-bottom: 2px solid #d0d7de; + padding-bottom: 15px; + color: #0969da; + font-size: 2.2em; +} + +h2 { + color: #1a7f37; + font-size: 1.6em; +} + +a { + color: #0969da; + text-decoration: none; +} + +code { + background-color: rgba(175, 184, 193, 0.2); + color: #24292f; + border-radius: 6px; + padding: 0.2em 0.4em; + font-size: 85%; +} + +pre { + background-color: #f6f8fa !important; + border: 1px solid #d0d7de; + border-radius: 8px; + padding: 20px; + box-shadow: 0 4px 12px rgba(140, 149, 159, 0.15); +} + +pre code { + background-color: transparent; + color: #24292f; +} + +ul, ol { + margin-top: 20px; +} + +li { + margin-bottom: 12px; +} + +strong { + color: #24292f; + font-weight: 700; +} + +footer, section::after { + color: #57606a; + font-size: 16px; +} + +/* Title Slide Styling */ +section.lead { + text-align: center; +} + +section.lead h1 { + border-bottom: none; + font-size: 3.2em; + margin-bottom: 10px; +} + +section.lead p { + color: #57606a; + font-size: 1.3em; + font-weight: 400; +} diff --git a/sessions/Tracks/DevOps/Session4/presentation.md b/sessions/Tracks/DevOps/Session4/presentation.md new file mode 100755 index 0000000..864c1eb --- /dev/null +++ b/sessions/Tracks/DevOps/Session4/presentation.md @@ -0,0 +1,361 @@ +--- +marp: true +theme: github-actions +paginate: true +--- + + + +# CI/CD & GitHub Actions +--- +## Content +- What is CI/CD? +- CI/CD Tools +- GitHub Actions +- NGINX +--- +## How integration & Deployment Done in the past + + + + +![image](attachments/development_deploy.jpg) + +--- +# What does CI/CD want to do? +## Continous Integration +every time I make a push -> pipeline check if this change integrate with the remain part of app and services (run tests) + + +## continous Delivery/Deployment +- The process of automatically deploying code to a production environment after passing all tests +- May involve human approval before production deployment in CD. +--- + +## CI/CD Pipline: example + +![image](attachments/CICD_Pipleine.webp) + + +--- + + +# GitHub Actions +--- +## What is GitHub Actions? + +GitHub Actions is an automation platform built directly into GitHub. It allows you to automate your software development workflows right where your code lives! + +**What can you do with it?** +- **CI/CD:** Automatically build, test, and deploy your code. +- **Task Automation:** Triage issues, label pull requests, and manage repository tasks. +- **Custom Workflows:** Trigger scripts on almost any event that happens in your repository. + +--- + +## Core Concepts of GitHub Actions + +GitHub Actions are driven by **Events** that happen in your repository: +- **Pull Requests** (e.g., opened, synchronized) +- **Issues** (e.g., created, commented on) +- **Commits** (e.g., code pushed to a branch) +- **Manual Triggers** (using `workflow_dispatch`) + +*For every event, you can trigger a **Workflow**.* + +--- + +## Anatomy of a Workflow + +A Workflow is an automated process that contains one or more **Jobs**: +* **Jobs** run in parallel by default, but can be configured to run sequentially. +* Each job runs on a **Runner** (a virtual machine, e.g., Linux, Windows, macOS provided by GitHub, or self-hosted). +* A job contains **Steps**. Steps inside a job always run sequentially. + +--- + +## Where do Workflows Live? + +Workflows are defined using YAML files and must be placed in a specific directory in your repository: + +```text +.github/ + └── workflows/ + └── my-workflow.yml +``` + +--- + +## A Basic Workflow Example + +```yaml +name: Hello World + +on: + push: + branches: + - main + pull_request: + branches: + - main + workflow_dispatch: + +jobs: + hello_job: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Say Hello + run: echo "Hello World!" + shell: bash + + goodbye_job: + runs-on: ubuntu-latest + steps: + - name: Say Goodbye + run: echo "Goodbye!" + shell: bash +``` + +--- + +## Demystifying the YAML: Triggers & Naming + +- **`name`**: (Optional) The name displayed in the GitHub UI. +- **`on`**: The events that trigger the workflow. + - *Tip*: `workflow_dispatch` allows manual UI triggers. + +--- + +## Structuring Jobs + +- **`jobs`**: Job IDs (e.g., `hello_job`). They cannot contain spaces! +- **`runs-on`**: The label of the runner machine (e.g., `ubuntu-latest`). + +--- + +## Steps & Execution + +- **`-` (Dash)**: Denotes an item in an array/list (like a list of `steps`). +- **`run`**: Executes a shell command on the runner. +- **`shell`**: (Optional) Specifies the shell to use, like `bash` or `pwsh`. + +--- + +## Using Community Actions (`uses`) + +Instead of writing scripts for everything, you can use pre-built actions! + +```yaml +- uses: actions/checkout@v4 +``` + +- **`uses`**: Tells the job to retrieve an action (e.g., checking out your repository code). +- **`@v4`**: Specifies the version. This can be a branch name, a Git tag (`v4`), or a specific commit SHA for security. + +--- + +## Envrioment variables: `env` + +Used to set environment variables that can be accessed by scripts within your workflow. You can set them at the workflow, job, or step level. + +```yaml +jobs: + test: + runs-on: ubuntu-latest + env: + NODE_ENV: testing + steps: + - run: echo "Running in $NODE_ENV mode!" +``` + +--- + +## Conditional Execution: `if` + +Allows you to conditionally execute a job or a step based on an expression. If the expression evaluates to false, the step is skipped. + +```yaml +steps: + - name: Run only on main branch + if: github.ref == 'refs/heads/main' + run: echo "Deploying to production!" +``` + +--- + +## Dependencies : `needs` + +By default, jobs run in parallel. `needs` defines a dependency, ensuring a job only starts after the specified jobs complete successfully. + +```yaml +jobs: + build: + runs-on: ubuntu-latest + steps: + - run: echo "Building..." + + deploy: + needs: build + runs-on: ubuntu-latest + steps: + - run: echo "Deploying after build!" +``` + + + +--- + +## What can you build with GitHub Actions? +1. **Automated Testing**: Run unit tests every time code is pushed. +2. **Issue Management**: Automatically reply to or label new issues. +3. **Deployment**: Build and deploy your application to staging or production automatically. + +--- + +## Hands On 🚀 +- create a simple workflow that automatically runs every time some one create pull request. It will check out your code and print a greeting! + +**Prerequisites:** +- Do a repo contains Readme file. + +--- + +## Step 1: Create the Workflow File + +In your repository, create a new file exactly at this path: +`.github/workflows/hello.yml` + +Paste the following YAML code: + +```yaml +name: First Action + +on: [push] + +jobs: + greet_job: + runs-on: ubuntu-latest + steps: + - name: Checkout Code + uses: actions/checkout@v4 + + - name: Say Hello + run: echo "Hello, Students! Your Action is running!" +``` + +--- + +## Step 2: Trigger & Verify + +1. **Commit** the `hello.yml` file to the `main` branch. +2. The `push` event will automatically trigger the workflow. +3. Go to the **Actions** tab at the top of your GitHub repository. +4. Click on **"First Action"** on the left sidebar. +5. Click on the running job (`greet_job`) to watch the logs live! + +🎉 *Congratulations! You've just built your first CI pipeline.* + +--- + + +# Deploying with NGINX +The powerhouse behind modern web applications. + +--- + +## What is NGINX? + +NGINX is a highly efficient tool that wears many hats. It acts as a single, secure entry point to your application, hiding your important backend servers from the public internet. + +**Key Roles:** +1. **Web Server**: Serves static content (HTML, CSS, images) extremely fast. +2. **Reverse Proxy**: Sits between end-users and your backend, forwarding requests. +3. **Load Balancer**: Distributes heavy traffic evenly across multiple servers. +4. **Caching Server**: Temporarily stores data to speed up future requests. + +--- + +## Why is NGINX so Efficient? + +Traditional servers create a new "thread" for every user request, which consumes a lot of memory. NGINX does it differently: + +- **Event-Driven & Asynchronous**: It handles thousands of concurrent connections within a **single thread**. + +**Everything in NGINX is controlled via a central configuration file called `nginx.conf`.** + +--- + +## Deep Dive: NGINX as a Proxy Server + +When used as a Reverse Proxy, NGINX supercharges your infrastructure by providing: +- **Load Balancing**: Ensuring no single backend server is overwhelmed. +- **SSL Termination**: Handling the heavy math of HTTPS encryption/decryption, freeing up your backend servers to focus on app logic. +- **Caching**: Returning saved responses to save database resources. +- **Global Traffic Management**: Redirecting users based on rules (e.g., routing `/api` traffic to one server and `/web` to another). + + +--- + +## Where Do We Write NGINX Configs? + +If NGINX is installed directly on a server, its files live in `/etc/nginx/`. + +1. **Global Settings (`/etc/nginx/nginx.conf`)** + - The main configuration file. + - Contains core settings (like `events {}`) and an `include` directive. + - *Best Practice: Do not write your app configurations here!* + +2. **App Settings (`/etc/nginx/conf.d/`)** + - This is where you write your app's `server {}` blocks! + - Create a file here (e.g., `my-app.conf`). NGINX will automatically read and include it when starting up. + + + +--- + +## Basic Proxy Configuration + +Here is a snippet showing how you configure a proxy in `nginx.conf`: + +```nginx +server { + listen 80; + + location / { + proxy_pass https://google.com:8080; + } +} +``` + + + +--- + + + +# Let's Deploy our App + +--- +**Resources** +- nginx: https://youtu.be/qqzL17vc5Gc?si=4Fv6hyO9mju_qZua +- Github actions: + - https://youtube.com/playlist?list=PLArH6NjfKsUhvGHrpag7SuPumMzQRhUKY&si=iJWmMWXNy1y4HBB4 + - https://youtu.be/7gJFHjXscr8?si=964lzjfc0sADOSMA + + + + + + + + + + + + + + + + + diff --git a/sessions/Tracks/DevOps/Session4/presentation.pdf b/sessions/Tracks/DevOps/Session4/presentation.pdf new file mode 100755 index 0000000..fec3ef5 Binary files /dev/null and b/sessions/Tracks/DevOps/Session4/presentation.pdf differ diff --git a/sessions/tracks/devops/session1/DevOps_Session1.pdf b/sessions/tracks/devops/session1/DevOps_Session1.pdf deleted file mode 100644 index f3c0966..0000000 Binary files a/sessions/tracks/devops/session1/DevOps_Session1.pdf and /dev/null differ