آموزش داکر، کبرنتیس و AWS با گیت‌هاب اکشنز برای دِوآپس - آخرین آپدیت

دانلود Docker, Kubernetes & AWS with GitHub Actions for DevOps

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:

آموزش Docker, Kubernetes, AWS و GitHub Actions برای ساخت، استقرار و خودکارسازی برنامه‌های کانتینری

از کد تخفیف DISCOUNT90 برای دریافت تخفیف استفاده کنید.

در این دوره چه خواهید آموخت؟ (مرور کلی)

  • ساخت، مدیریت و استقرار کانتینرها – اصول Docker را درک کنید، ایمیج‌های Docker بسازید و برنامه‌های کانتینری را به طور موثر اجرا کنید.
  • استقرار برنامه‌ها روی AWS – برنامه‌های کانتینری را در AWS ECS و EKS مستقر کنید، با بهره‌گیری از مفاهیم شبکه AWS مانند VPCها، Subnetها و Load Balancerها.
  • پیاده‌سازی پایپ‌لاین‌های CI/CD – استقرار Docker و Kubernetes را با استفاده از GitHub Actions و Helm Charts برای گردش‌کارهای یکپارچه DevOps خودکار کنید.
  • درک شبکه Docker – بیاموزید چگونه کانتینرها به صورت داخلی و خارجی ارتباط برقرار می‌کنند و Docker Compose را برای برنامه‌های چند کانتینری پیکربندی کنید.
  • ایمن‌سازی و مقیاس‌پذیری برنامه‌ها – بهترین شیوه‌های امنیتی را پیاده‌سازی کنید، رازها (secrets) را مدیریت کنید و برنامه‌ها را با استفاده از مقیاس‌بندی افقی و عمودی در Kubernetes مقیاس‌پذیر کنید.
  • استفاده از Kubernetes برای دسترسی بالا (High Availability) – بارهای کاری آماده تولید را با Kubernetes StatefulSets، Persistent Volumes و Auto Scaling مستقر کنید.

پیش‌نیازها:

  • دانش پایه توسعه – آشنایی با هر زبان برنامه‌نویسی (مانند JavaScript، Python یا Go) مفید است.
  • حساب AWS – برای تمرین عملی با سرویس‌های AWS مانند ECS، EKS و شبکه ضروری است.
  • مفاهیم پایه شبکه – درک IPها، پورت‌ها و اصول اولیه شبکه مفید خواهد بود.
  • مبانی Git و GitHub – دانش کنترل نسخه و کار با مخازن GitHub.

به این دوره جامع Docker و Kubernetes بپیوندید و دو مورد از حیاتی‌ترین فناوری‌ها را در توسعه نرم‌افزار مدرن بیاموزید!

چرا Docker و Kubernetes را بیاموزیم؟

Docker و Kubernetes استقرار برنامه و گردش‌کارهای DevOps را متحول کرده‌اند. چه یک توسعه‌دهنده باشید و چه مهندس DevOps، تسلط بر این ابزارها کارایی شما را افزایش می‌دهد و به شما کمک می‌کند برنامه‌های مقیاس‌پذیر بسازید.

با Docker، می‌توانید برنامه‌ها و وابستگی‌هایشان را در کانتینرهای سبک و قابل حمل بسته‌بندی کنید و از اجرای سازگار آن‌ها در محیط‌های مختلف اطمینان حاصل کنید.

با Kubernetes، می‌توانید برنامه‌های کانتینری را به طور خودکار، مقیاس‌پذیر و کارآمد در هر محیط ابری یا On-premises مدیریت کنید.

این دوره شما را از یک مبتدی مطلق به یک مهندس آماده به کار با پروژه‌های عملی و استقرارهای واقعی تبدیل خواهد کرد.

آنچه در این دوره خواهید آموخت:

  1. مبانی Docker – ساخت، مدیریت و اجرای کانتینرها با Docker.

  2. شبکه در Docker – بیاموزید چگونه کانتینرها به صورت داخلی و خارجی ارتباط برقرار می‌کنند.

  3. برنامه‌های چند کانتینری – مدیریت میکروسرویس‌ها با Docker Compose.

  4. شبکه AWS – درک VPC، Subnetها، Security Groupها، NACL و Route Tableها.

  5. AWS ECS – استقرار برنامه‌های داکری شده در Amazon ECS.

  6. CI/CD با GitHub Actions – خودکارسازی استقرارها با پایپ‌لاین GitHub Actions.

  7. معماری Kubernetes – درک Pods، Deployments، Services، ConfigMaps و موارد دیگر.

  8. شبکه در Kubernetes – بیاموزید Services و Ingress را برای شبکه کارآمد.

  9. AWS EKS – استقرار، مقیاس‌بندی و مدیریت خوشه‌های Kubernetes در Amazon Elastic Kubernetes Service (EKS).

  10. Helm Charts – خودکارسازی استقرارهای Kubernetes با Helm.

  11. CI/CD برای Kubernetes – پیاده‌سازی یک پایپ‌لاین CI/CD در سطح تولید برای برنامه‌های Kubernetes.

چرا این دوره را بگذرانید؟

یادگیری عملی – ساخت پروژه‌های واقعی با استفاده از Docker، Kubernetes و AWS.
راهنمایی گام به گام – بدون نیاز به تجربه قبلی!
استقرارهای Cloud-native – بیاموزید چگونه برنامه‌ها را در مقیاس بزرگ مستقر کنید.
مهارت‌های مرتبط با صنعت – تسلط بر فناوری‌های مورد استفاده شرکت‌های برتر.

در پایان این دوره، شما مهارت‌ها و اعتماد به نفس لازم برای استقرار، مدیریت و خودکارسازی برنامه‌های کانتینری را در محیط‌های تولیدی خواهید داشت!


سرفصل ها و درس ها

[0] Course Introduction and source code

  • مقدمه دوره Course Introduction

  • DevOps چیست؟ نقش‌ها و ابزارهایی که نیاز دارید What is DevOps? Roles & Tools You Need

  • لینک سورس کد Source Code Link

[1.1]-اصول اولیه شبکه AWS [1.1] Aws Networking basics

  • مقدمه بخش Section Introduction

  • VPC و Subnet چیست (تئوری) What is VPC and Subnet (Theory)

  • آدرس IP و CIDR Block (تئوری) IP Address and CIDR Block (Theory)

  • Route Table و Internet Gateway (تئوری) Route Table and Internet Gateway (Theory)

  • Security Groups (تئوری) Security Groups (Theory)

  • NACL و مقایسه NACL با Security Group (تئوری) NACL and NACL vs Security Group (Theory)

  • NAT Gateway (تئوری) NAT Gateway (Theory)

  • ایجاد کاربر IAM برای خودمان (عملی) Creating IAM User for ourself (practical)

  • ایجاد VPC، Public Subnet، Route Table و IGW (عملی) Create VPC, Public Subnet, Route Table and IGW (practical)

  • اجرای EC2 instance، پیکربندی SG و NACL (عملی) Launch EC2 instance, configure SG and NACL (practical)

  • Private Subnet و NAT gateway (عملی) Private Subnet and NAT gateway (practical)

  • آزمون شبکه AWS AWS Networking Quiz

[1.2]-اصول DNS [1.2] DNS Basics

  • DNS چیست - چگونه اینترنت وب‌سایت شما را پیدا می‌کند What Is DNS - How the Internet Finds Your Website

  • انواع DNS Records - A, AAAA, CNAME, MX, NS & SOA DNS Records types - A, AAAA, CNAME, MX, NS & SOA

  • اجرای EC2 با User data script Launch EC2 with User data script

  • پیکربندی NGINX به عنوان reverse proxy Configure NGINX as reverse proxy

  • اختصاص Elastic IP به EC2 و نگاشت یک دامنه به IP Allocate Elastic IP to EC2 and mapping a domain to IP

  • راه‌اندازی SSL/TLS و اجرای وب‌سایت روی HTTPS Setup SSL/TLS and run website on HTTPS

  • آزاد سازی elastic IP و پایان دادن به EC2 instance Release elastic IP and terminate EC2 instance

[1.3]-AWS Elastic Load Balancer (ELB) [1.3] AWS Elastic Load Balancer (ELB)

  • معرفی AWS ELB و انواع ELB Introduction to AWS ELB and Types of ELB

  • اجزای ELB - listener و target group ELB Components - listener and target group

  • ELB خارجی و داخلی و Security group برای ALB External and Internal ELB & Security group for ALB

  • مقایسه ALB و NLB و قیمت‌گذاری ALB vs NLB & pricing

  • پیکربندی route 53 برای مدیریت DNS - پیش نیاز برای عملی Configure route 53 to manage DNS - prerequisite for practical

  • درک نمودار معماری و ایجاد VPC و Subnet Understanding architecture diagram and creating VPC and Subnets

  • ایجاد Amazon Machine Image (AMI) سفارشی Create custom Amazon Machine Image (AMI)

  • اجرای EC2 instance و ایجاد ALB و TG Launch EC2 instance and create ALB and TG

  • ALB با stickiness ALB with stickiness

  • مسیریابی مبتنی بر Path در ALB Path based routing in ALB

  • بهبود Security group Security group improvement

  • افزودن دامنه سفارشی برای ALB با استفاده از route 53 Adding custom domain for ALB using route 53

  • راه‌اندازی HTTPS برای ALB Setup HTTPS for ALB

  • پاکسازی همه چیز - ALB، TG، EC2، AMI و hosted zone Cleanup Everything - ALB, TG, EC2, AMI & hosted zone

[2]-CI/CD با استفاده از Github Actions برای مبتدیان [2] CI/CD Using Github Actions for beginners

  • معرفی Github Actions Github Actions Introduction

  • بررسی اجمالی پروژه Project Overview

  • ایجاد Workflow برای چاپ hello world Create Workflow to print hello world

  • Clone کد پروژه به remote runner و checkout action Clone project code to remote runner & checkout action

  • راه‌اندازی node js و اجرای تست کیس‌ها Setup node js and run test cases

  • Parallel و sequential job و skip workflow on push Parallel and sequential job and skip workflow on push

  • Cache کردن dependencies برای سرعت بخشیدن به اجرای workflow Cache dependencies to speed up the workflow run

  • Upload و download artifact Upload and download artifact

  • افزودن فیلتر به push event Adding filter to push event

  • composite action - استفاده مجدد از مراحل تکراری composite action - reusing duplicate steps

  • استقرار برنامه react به github pages با استفاده از github actions Deploy react app to github pages using github actions

  • یکپارچه‌سازی Sonar cloud برای بررسی کیفیت کد Sonar cloud integration to check code quality

[3.1]-اصول Docker [3.1] Docker basics

  • چرا به docker نیاز داریم why do we need docker

  • Dockerfile, Image و Container چیست what is dockerfile, image & container

  • نصب docker Installing docker

  • ایجاد Dockerfile Creating Dockerfile

  • ایجاد image و اجرا در یک container building images and running in a container

  • دسترسی به برنامه با استفاده از port mapping access application using port mapping

  • بهره‌گیری از Docker cache برای سرعت بخشیدن به build Leveraging Docker cache to speed up build

  • ذخیره سازی داده‌ها با استفاده از named volumes persisting data using named volumes

  • تفاوت بین entrypoint و cmd Difference between entrypoint and cmd

  • push کردن image به docker hub pushing image to docker hub

  • استفاده از docker compose برای اتوماتیک کردن image build و container spin-up using docker compose to automate image build and container spin-up

  • docker compose develop watch برای hot reloading docker compose develop watch for hot reloading

[3.2]-شبکه‌بندی Docker و برنامه Multi Container [3.2] Docker networking and multi container application

  • هدف ما برای این بخش Our goal for this section

  • ارتباط با استفاده از local environment (host docker internal) communication using local environment (host docker internal)

  • ارتباط با استفاده از IP کانتینرها communication using containers IP

  • ایجاد network و ارتباط با استفاده از نام کانتینرها create network & communication using containers name

  • ایجاد docker compose برای برنامه multi container create docker compose for multi container app

  • افزودن environment variable برای کاربر ادمین mongodb adding environment variable for mongodb admin user

  • افزودن سرویس client در docker compose adding client service in docker compose

  • multistage dockerfile multistage dockerfile

  • ایجاد docker compose جداگانه برای prod و ارائه API URL از env create separate docker compose for prod and provide API URL from env

  • استفاده از managed service برای database container - mongodb atlas using managed service for database container - mongodb atlas

[3.3]-استقرار برنامه Multi container Docker به AWS ECS [3.3] Deploying Multi container Docker app to AWS ECS

  • گزینه‌های استقرار و معرفی ECS Deployment options & ECS introduction

  • درک اجزای ECS - task definition، service و cluster Understanding ECS components - task definition, service & cluster

  • استقرار API container (بک‌اند) در ECS Deploy API container (backend) on ECS

  • رفع مشکل nginx 404 برای route ادمین Fix nginx 404 issue for admin route

  • استقرار Client container (فرانت‌اند) در ECS Deploy Client container (frontend) on ECS

  • دسترسی به Client Container با استفاده از ALB DNS Name Access Client Container using ALB DNS Name

[3.4]-اتوماتیک کردن استقرار ECS با استفاده از Github Actions CI/CD [3.4] Automate ECS deployment using Github Actions CI/CD

  • ایجاد workflow و job برای ساخت بک‌اند و push کردن image به dockerhub Create workflow and job to build backend and push image to dockerhub

  • ایجاد job برای ساخت client image و login به aws Creating job for building client image and login to aws

  • به‌روزرسانی task definition و trigger استقرار سرویس در ECS Update task definition & trigger service deployment on ECS

  • حذف ECS Cluster - مهم! Delete ECS Cluster - IMPORTANT!

[4.1]-مفاهیم اصلی Kubernetes [4.1] Kubernetes core concepts

  • چرا و Kubernetes چیست Why & What is kubernetes

  • معماری Kubernetes Kubernetes Architecture

  • فعال کردن Kubernetes در docker desktop Enable kubernetes in docker desktop

  • درک POD و ایجاد manifest file برای pod Understanding POD & creating manifest file for pod

  • ایجاد POD و استفاده از kubectl Create POD and using kubectl

  • استفاده از Nodeport service برای دسترسی به برنامه Using Nodeport service to access application

  • Namespace در k8s Namespace in k8s

  • Self healing Self healing

  • استفاده از Deployment برای حل مشکل downtime Using Deployment to solve downtime problem

  • Rolling updates و Rollback Rolling updates and Rollback

  • Autoscaling Pod با استفاده از HPA Autoscaling Pod using HPA

  • liveness و readiness probes liveness and readiness probes

[4.2]-مفاهیم پیشرفته Kubernetes - Networking، StatefulSet، Services & Ingress [4.2] Kubernetes Advance Concepts - Networking, StatefulSet, Services & Ingress

  • هدف این بخش Goal of this section

  • ایجاد StatefulSet و Persistent volume Creating StatefulSet & Persistent volume

  • ایجاد manifest برای backend deployment Creating manifest for backend deployment

  • ارتباط Pod به Pod با استفاده از ClusterIP service Pod to Pod communication using ClusterIP service

  • معایب Nodeport service با استفاده از Loadbalancer service Nodeport service downsides using Loadbalancer service

  • مقایسه ClusterIP، NodePort و LoadBalancer Service ClusterIP vs NodePort VS LoadBalancer Service

  • استفاده از environment variable، ConfigMap و Secret Using environment variable, ConfigMap and Secret

  • معرفی Ingress و نمودار شبکه‌بندی Ingress introduction & networking diagram

  • ایجاد deployment و service برای frontend Create deployment & service for frontend

  • پیکربندی Ingress controller و ingress rules Configure Ingress controller and ingress rules

  • اعمال Ingress و تست برنامه ما Applying Ingress and testing our application

[4.3]-Helm [4.3] Helm

  • معرفی Helm Helm Introduction

  • نصب Helm Install Helm

  • استفاده از helm برای نصب بسته‌ها Using helm to install packages

  • پیکربندی mongodb با قابلیت دسترسی بالا با استفاده از helm Configure highly available mongodb using helm

  • ساختار دایرکتوری Helm Chart Helm Chart directory structure

  • ایجاد Helm Chart برای backend Create Helm Chart for backend

  • ایجاد Helm chart برای frontend Create Helm chart for frontend

  • ایجاد helm package و استقرار client و backend Creating helm package and deploy client and backend

  • if و range action در helm و helm chart برای ingress if and range action in helm & helm chart for ingress

  • استقرار ingress controller با استفاده از helm و تست برنامه Deploy ingress controller using helm and testing app

[4.4]-استقرار Kubernetes AWS EKS و CI CD با استفاده از Github actions [4.4] Kubernetes AWS EKS deployment and CI CD using Github actions

  • فرایند استقرار در AWS EKS Deployment process on AWS EKS

  • پیکربندی aws cli و secret key Configure aws cli and secret key

  • نصب eksctl Install eksctl

  • حذف helm releases از local uninstall helm releases from local

  • استفاده از mongodb atlas برای eks using mongodb atlas for eks

  • login به عنوان IAM و ایجاد EKS Cluster login as IAM and create EKS Cluster

  • استقرار برنامه در EKS Cluster Deploy application to EKS Cluster

  • ایجاد تغییر و استقرار مجدد Making change and redeploying

  • اتوماتیک کردن استقرار با استفاده از github actions Automate deployment using github actions

  • حذف EKS cluster - مهم Delete EKS cluster - IMPORTANT

  • استقرار mongodb stateful application به EKS با استفاده از EBS برای Persistent Volume Deploy mongodb stateful application to EKS using EBS for Persistent Volume

[5]-مقدمه‌ای بر Terraform و IaC [5] Introduction to Terraform & IaC

  • Terraform 101 چیست و چرا IaC Terraform 101 What It Is & Why IaC

  • نصب terraform و پیکربندی aws cli Install terraform and configure aws cli

  • درک syntax HCL Understanding HCL syntax

  • افزودن aws provider و پیکربندی EC2 Adding aws provider and EC2 configuration

  • workflow terraform terraform workflow

  • Input variable و locals Input variable and locals

  • Datasource برای fetch کردن AMI از AWS Datasource to fetch AMI from AWS

  • افزودن security group rules Adding security group rules

  • output block و count meta argument output block and count meta argument

  • for each meta argument و for loop for each meta argument and for loop

  • fetch کردن AZهای پشتیبانی شده با استفاده از data source fetch supported AZs using data source

  • ایجاد VPC با استفاده از module Create VPC using module

  • اجرای EC2 در VPC سفارشی (جدید) Launch EC2 in the custom (new) VPC

  • پیکربندی remote s3 state Configure remote s3 state

نمایش نظرات

آموزش داکر، کبرنتیس و AWS با گیت‌هاب اکشنز برای دِوآپس
جزییات دوره
20 hours
137
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
265
4.6 از 5
ندارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Mukesh Phulwani Mukesh Phulwani

بنیانگذار CNQ سلام به همه ، نام من mukesh phulwani است و من از مدتها قبل کد نویسی می کردم ، اکنون من دانش خود را که در این مدت به دست آورده ام در سیستم عامل خود به اشتراک می گذارم CODERS NOVER QUIT. من به عنوان یک توسعه دهنده fullstack و یک مربی آنلاین کار می کنم. تخصص های من عمدتا در اطراف یک زبان اصلی جاوا اسکریپت جاذبه دارند و پس از مدتی با JS فهمیدم که بازگشتی وجود ندارد. احساس راحتی کنید و من را در حساب های رسانه های اجتماعی خود جلب کنید