آموزش DevOps: یک برنامه فشرده 5 روزه جامع

DevOps Training: A Comprehensive 5-day Intensive Program

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
توضیحات دوره: آموزش سرتاسری DevOps با ابزارهایی مانند git، maven، Sonar، Nexus، Docker، Docker، K8s و CI/CD، Ansible، Jenkins دانش عمیق متدولوژی DevOps پیاده‌سازی کد کانتینری‌سازی کنترل نسخه نرم‌افزار در تولید با استفاده از Docker ایجاد خطوط لوله CI/CD با استفاده از مدیریت پیکربندی Jenkins با استفاده از Ansible Automating ساخت و آزمایش با استفاده از Maven Container Orchestration با استفاده از Kubernetes Git، Jenkins & Maven ادغام پیوسته با استفاده از Jenkins

در این دوره آنلاین DevOps، جنبه های زیر را یاد خواهید گرفت:

- دانش عمیقی از روش DevOps به دست آورید.

- کنترل نسخه نرم افزار را اجرا کنید.

- Git، Jenkins Maven ادغام

- Apache Maven - Spring Boot Maven Project

- SonarQube - ابزار کیفیت کد برای کد بهتر

- کد کانتینری برای تولید با استفاده از Docker.

- خطوط لوله CI/CD را با استفاده از Jenkins ایجاد کنید.

- تنظیمات را با استفاده از Ansible مدیریت کنید.

- ساخت و آزمایش را با استفاده از Selenium و Maven به صورت خودکار انجام دهید.

- کانتینرها را با استفاده از Kubernetes هماهنگ کنید.

هر بخش از این دوره دارای مجموعه‌ای متفاوت از آزمون‌ها است و همچنین تکالیف آزمایشگاهی پروژه‌های زیادی وجود دارد که به شما کمک می‌کند آنچه را که آموخته‌اید نشان دهید.

برنامه درسی دوره

ماژول 1: نمای کلی DevOps

مقدمه ای بر DevOps

مزایای کار در محیط DevOps

چرخه عمر DevOps

مراحل DevOps

خط لوله تحویل DevOps

ماژول 2: سرویس AWS - EC2

یک حساب AWS ایجاد کنید

یک نمونه EC2 ایجاد کنید - آمازون لینوکس

یک جفت کلید ایجاد کنید - کلید خصوصی عمومی

MobaXterm - اتصال نمونه EC2

Putty - اتصال EC2 Instance

یک نمونه EC2 - اوبونتو ایجاد کنید

دسترسی به نمونه با استفاده از رمز عبور نام کاربری (بدون استفاده از کلید خصوصی)

اطلاعات بیشتر درباره کلید عمومی خصوصی

احراز هویت بدون رمز عبور از لینوکس به سرور اوبونتو

آزمایشگاه - به نمونه لینوکس آمازون غیر از کاربر پیش فرض دسترسی داشته باشید

آزمایشگاه - به نمونه لینوکس اوبونتو غیر از کاربر پیش فرض دسترسی داشته باشید

آزمایشگاه - احراز هویت بدون رمز عبور بین آمازون لینوکس اوبونتو و بالعکس

ماژول 3: لینوکس

ساختار سلسله مراتب فایل لینوکس

تمرین دستورات پایه لینوکس

pwd، touch، vi، vim، nano، cp، mv، mkdir و غیره

ماژول 4: مدیریت حساب کاربری در لینوکس

نمای کلی مدیریت کاربر

آزمایشگاه - مدیریت حساب کاربری

آزمایشگاه - ایجاد گروه کاربر

آزمایشگاه - گروه تکمیلی اولیه

آزمایشگاه - فرمان Usermod

آزمایشگاه - فایل سایه

ماژول 5: کنترل نسخه با Git

نمای کلی Git GitHub

ایجاد یک حساب GitHub، مخزن، شبیه سازی - سیستم کنترل نسخه توزیع شده

پیکربندی Git

مراحل در Git

کشش Git از راه دور به محلی

فشار Git از Local به Remote

مراحل در Git - Add Commit

ماژول 6: کار با Branches در Git

معرفی شعب

آزمایشگاه - ایجاد شاخه‌ها (توسعه اصلی)

شاخه فشاری از محلی به راه دور ایجاد کنید

شاخه های ویژگی

درخواست کشش - برای ادغام یک شاخه در شاخه دیگر

انتشار شعبه

شعبه رفع فوری

آزمایشگاه - شعبه رفع فوری را منتشر کنید

با قوانین حفاظت از شعبه، بازبین را در درخواست کشش اضافه کنید

روابط عمومی - نظر، تأیید تغییرات درخواست

ماژول 7: حل تعارض در Git

درک تداخل در ادغام git

ایجاد تضاد ادغام برای حل آن

از TortoiseGit S/W برای حل تعارضات استفاده کنید

تضادهای GitHub را با استفاده از ویرایشگر وب با استفاده از روابط عمومی با یک بازبین حل کنید

ماژول 8: نمونه های پروژه واقعی - موارد مبتنی بر سناریو

دستور Git clean برای حذف فهرست فایل

واگرد تغییرات روی فایل‌های موجود

دستور Git Revert

فرمان بازنشانی گیت

دستور واکشی Git

فرمان Git pull

تفاوت git ادغام git واکشی

ماژول 9: GitHub Deep Drive - Cherry-pick، برچسب ها، ادغام مجدد در Git

Cherry-pick در git چیست؟

آزمایشگاه انتخاب Cherry با تداخل در ادغام

برچسب‌های گیت

برچسب ها را از راه دور محلی حذف کنید

دستور Git rebase

تفاوت بین ادغام git rebase

ماژول 10: Apache Maven - Spring Boot Maven Project

مروری بر ابزار Maven

چرخه زندگی Maven: پیش‌فرض، سایت تمیز

مخازن مورد استفاده در Maven

آزمایشگاه - بسته Springboot را در محیط AWS بسازید

آزمایشگاه: مکان وابستگی های بسته ساخته شده توسط Artifacts

آزمایشگاه: کاوش فایل pom.xml

آزمایشگاه: به برنامه بسته دسترسی پیدا کنید

آزمایشگاه: کاوش وابستگی های یک بسته ساخته شده

آزمایشگاه: ساخت چرخه حیات

آزمایشگاه: آزمایشگاه: با استفاده از Maven یک پروژه برنامه کاربردی وب ایجاد کنید

ماژول 11: SonarQube - ابزار کیفیت کد برای کد بهتر

درباره ویژگی های ابزار SonarQube

نصب SonarQube

پیکربندی گزارش‌های SonarQube را بررسی کنید

پورت خدمات SonarQube

از طریق URL به SonarQube دسترسی پیدا کنید

Maven را برای ساخت بسته راه اندازی کنید

SonarScanner for Maven

آزمایشگاه - کد بد توسط SonarQube شناسایی شد

آزمایشگاه - کد تصحیح و دوباره توسط SonarQube بررسی شد

ماژول 12: Maven در مخزن Nexus مستقر شد

سرور Nexus را پیکربندی کنید

مدیریت مخزن Sonatype Nexus را پیکربندی کنید

ساخت پروژه Springboot Maven

الزامات Nexus در فایل pom.xml

اعتبارنامه ورود به Nexus

مصنوعات را در مخزن Nexus آپلود کنید

ماژول 13: Jenkins - Automation Software DevOps Tool

درباره ابزار جنکینز

نصب جنکینز

نمای کلی از داشبورد جنکینز

اولین شغل را در جنکینز ایجاد کنید

شغل - محل کار پیش فرض کاربر

وضعیت، ثبات آب و هوای یک شغل

پانل جستجو در داشبورد جنکینز

مدیریت جنکینز - پیکربندی سیستم

مدیریت افزونه ها - یک افزونه تم ساده نصب کنید

ماژول 14: ادغام Jenkins GitHub

پروژه git را با استفاده از Shell کلون کنید

قبل از شروع ساخت، فضای کاری را حذف کنید

از SCM برای شبیه سازی مخزن git استفاده کنید

ماژول 15: ساخت خط لوله - تحویل مداوم در مقابل استقرار مداوم

خط لوله جنکینز را با استفاده از خط لوله ایجاد کنید

تحویل مداوم در مقابل استقرار مستمر

مشاغل موازی در خط لوله ساخت جنکینز

ماژول 16: پروژه - استقرار بسته فایل WAR در سرور Tomcat با استفاده از Jenkins - CICD

نمای کلی پروژه

کد را از مخزن Git کلون کنید

Maven را با جنکینز ادغام کنید

بسته را با استفاده از Maven Tool بسازید

پیکربندی سرور Tomcat را نصب کنید

یک خط لوله را با استفاده از Build Pipeline پیکربندی کنید

فایل Package (.war) را در سرور Tomcat مستقر کنید

ماژول 17: خط لوله جنکینز - خط لوله اعلامی

خط لوله جنکینز - خط لوله اعلامی

اولین خط لوله را به عنوان کد ایجاد کنید - اولین فایل جنکینز را ایجاد کنید

چند مرحله در اسکریپت خط لوله

دستورات را با استفاده از خط لوله اجرا کنید

متغیر/محیط در اسکریپت خط لوله

متغیرهای سطح مرحله را با استفاده از خط لوله تعریف کنید

ایجاد پارامترها در اسکریپت خط لوله

پارامترهای انتخاب بولی در خط لوله اسکریپت

ورودی از کاربر در خط لوله اسکریپت

ارسال کنش‌ها در اسکریپت خط لوله

ماژول 18: مدیریت پیکربندی با استفاده از Ansible

معرفی Ansible

نمای کلی از معماری Ansible

اجزای قابل تشخیص

تمرین هدایت شده: نصب Ansible

مدیریت فایل های پیکربندی Ansible

تمرین هدایت‌شده: مدیریت فایل‌های پیکربندی Ansible

اجرای دستورات موقت

تمرین هدایت شده: اجرای دستورات موقت

آزمایشگاه: استقرار Ansible

ماژول 19: پیاده سازی Playbooks

پیاده سازی Playbooks

نوشتن فایل های YAML

تمرین هدایت‌شده: نوشتن فایل‌های YAML

پیاده سازی ماژول ها

تمرین هدایت شده: پیاده سازی ماژول ها

پیاده سازی Ansible Playbooks

تمرین هدایت‌شده: پیاده‌سازی کتاب‌های بازی Ansible

آزمایشگاه: پیاده‌سازی کتاب‌های راهنما

ماژول 20: مدیریت متغیرها و موارد در Ansible

مدیریت متغیرها

تمرین هدایت شده: مدیریت متغیرها

مدیریت حقایق

تمرین هدایت شده: مدیریت حقایق

مدیریت شامل

تمرین هدایت شده: مدیریت گنجاندن

آزمایشگاه: مدیریت متغیرها و اجزاء

ماژول 21: اجرای کنترل وظایف در Ansible

اجرای کنترل وظیفه

ساخت کنترل جریان

تمرین هدایت شده: ساختن کنترل جریان

اجرا کننده ها

تمرین هدایت شده: پیاده سازی هندلرها

پیاده سازی برچسب ها

تمرین هدایت شده: پیاده سازی برچسب ها

رسیدگی به خطاها

تمرین هدایت شده: رسیدگی به خطاها

آزمایشگاه: اجرای کنترل وظیفه

ماژول 22: Containerization با استفاده از Docker

مقدمه ای درباره کانتینرها

نصب Docker

اولین ظرف را ایجاد کنید

واکشی تصویر کانتینر از داکر هاب

یک کانتینر را در گروه پشتیبان اجرا کنید، تعاملی با ترمینال tty

داکرهای خروجی را با استفاده از یک فرمان حذف کنید

جزئیات کامل یک ظرف در حال اجرا را دریافت کنید

آمار گزارش‌های یک ظرف در حال اجرا را بررسی کنید

حمل و نقل بندر

exec، نام محفظه در حال اجرا را مجدداً راه اندازی کنید

یک ظرف را وصل کنید

کشتن/توقف، مکث/لغو مکث یک ظرف

دستور ایجاد، شروع، cp

فرمان صادر/وارد کردن در Docker

یک تصویر از ظرف در حال اجرا ایجاد کنید

تصویر نسخه خاصی را از داکر هاب بکشید

سابقه تصویر، حذف تصویر را بررسی کنید

ماژول 23: Dockerfile

نمای کلی Dockerfile، معماری لایه‌ای

یک تصویر centos 7 با استفاده از Dockerfile ایجاد کنید

نمای کلی از LABEL، ENV RUN Command

نمای کلی WORKDIR

کپی کنید، دستور را با تفاوت های آنها اضافه کنید

با استفاده از dockerfile یک حساب کاربری با رمز عبور ایجاد کنید

فرمان CMD

SSH به ظرف

نمای کلی از فرمان EXPOSE

ENTRYPOINT در Dockerfile

ماژول 24: Real Time CI/CD DevOps Project | پروژه خط لوله CI/CD End To End

مروری بر فرآیند CI/CD

پیکربندی Build Server و نصب ابزارهای مختلف مانند Java، Git، Maven، Docker

پرداخت پروژه را با استفاده از Maven Tool بسازید

SonarQube را روی نمونه اوبونتو نصب کنید

افزودن Sonar-maven-plugin

سرویس SonarQube را راه اندازی کنید

کیفیت کد را بررسی کنید

نمای کلی Dockerfile برای ایجاد یک تصویر Docker

یک مخزن در AWS ECR ایجاد کنید

نقشی برای ارائه دسترسی به یک سرویس AWS (سرور CI) به دیگری (AWS ECR) ایجاد کنید

تصویر Docker را با استفاده از Dockerfile بسازید

تصویر Docker را به مخزن AWS ECR فشار دهید

یک سرور CD ایجاد کنید - استقرار مداوم

تصویر Docker را از ECR به سرور CD اجرا کنید

کل فرآیند CICD را خلاصه کنید

ماژول 25: پروژه DevOps CI/CD بیدرنگ: خط لوله CI/CD سرتاسر با استفاده از جنکینز

یک سرور جنکینز (سرور CI) نصب کنید

پیکربندی جنکینز

یک خط لوله جنکینز برای پرداخت و ساخت پروژه ایجاد کنید

سرور SonarQube را با استفاده از ظرف Docker نصب کنید

افزونه ها را نصب کنید و اعتبارنامه ورود Sonar را اضافه کنید

پیکربندی SonarQube در سرور جنکینز

خط لوله برای اسکنر SonarQube برای جنکینز

خط لوله برای موفقیت یا به دلیل خرابی دروازه با کیفیت متوقف شد

یک هوک را پیکربندی کنید

خط لوله ای که از یک Dockerfile برای ساختن تصویر داکر استفاده می کند

افزودن پلاگین - CloudBees AWS، ECR، Docker

یک کاربر IAM ایجاد کنید تا به AWS ECR دسترسی داشته باشید و آن را به سرور جنکینز اضافه کنید

خط لوله برای فشار دادن تصویر Docker به AWS ECR

SES را برای ارسال اعلان ایمیل پیکربندی کنید

SES را با Jenkins با استفاده از خط لوله ادغام کنید

Pipeline-دریافت اعلان ایمیل پس از موفقیت یا شکست Jenkins Pipeline

ماژول 26: ارکستراسیون با استفاده از Kubernetes

Kubernetes چیست

چرا از Kubernetes استفاده می کنیم؟

رویکرد یکپارچه برای توسعه برنامه‌ها.

Microservices در مقابل. یکپارچه

Kubernetes Gateway API

تکامل کانتینرها، Dockers VMs

خدمات میکرو که به صورت کانتینر اجرا می شوند

Kubernetes - ارکستراسیون یا ابزار مدیریت کانتینر

ویژگی های Kubernetes

یک خوشه Kubernetes را در یک محیط AWS راه اندازی کنید

ماژول 27: مفاهیم Kubernetes - انواع کلاستر، سرور Minikube، YAML، Pod، Kubelet، پورت ها

خوشه Kubernetes

انواع خوشه

همه کاره (خوشه گره تکی)

خوشه های گره تک گره، تک اصلی و چند کارگری.

گروه گره تک گره و غیره، چند استاد و چند کارگر.

درباره Minikube

نصب سرور Minikube

اولین POD را با استفاده از فایل manifest نوشته شده به زبان YAML ایجاد کنید

دستورات Kubelet

گزارش‌های کانتینر را بررسی کنید

چندین کانتینر در یک POD ایجاد کنید

حاشیه نویسی Kubernetes

متغیرهای موجود در فایل YAML

تعریف پورت ها

ماژول 28: انتخابگرهای برچسب در Kubernetes

برچسب ها و انتخابگرها

دستورات برای مدیریت انتخابگرهای برچسب

دستورات Declarative در مقابل Imperative Kubernetes

دو نوع انتخابگر

بر اساس برابری

تنظیم بر اساس

تمرین آزمایشگاه - انتخابگرهای برچسب

تمرین آزمایشگاه - یک برچسب به POD در حال اجرا اختصاص دهید

آزمایشگاه تمرین - با استفاده از مجموعه برابری

در غلاف جستجو کنید

انتخابگر گره

آزمایشگاه - یک غلاف در یک گره خاص ایجاد کنید

ماژول 29: مقیاس گذاری و تکرار در Kubernetes

ReplicationController چیست؟

ویژگی های RC

تمرین آزمایشگاه - کپی های POD را با استفاده از RC ایجاد کنید

Practice Lab - POD را دوباره ایجاد کنید، در صورت خرابی، خرابی یا پایان یافتن آن

با افزایش بار، POD را کاهش دهید

تمرین آزمایشگاه - مقیاس POD را کاهش دهید

ReplicaSet چیست؟

تفاوت بین ReplicationController ReplicaSet

آزمایشگاه تمرین - با استفاده از ReplicaSet کپی های POD ایجاد کنید

تمرین آزمایشگاه - از عبارات مطابقت مبتنی بر مجموعه در RS استفاده کنید

ماژول 30: بازگرداندن استقرار

نمای کلی از استقرار و بازگشت

مانیفست برای یک POD با یک کانتینر با استفاده از Deployment Object

آزمایشگاه: یک برنامه را با دو POD با استفاده از شیء استقرار

راه اندازی کنید

Lab: با استفاده از Deployment Object، یک برنامه را از نسخه 1 به نسخه 2 ارتقا دهید

آزمایشگاه: برنامه را به نسخه قبلی برگردانید

آزمایشگاه: برنامه را به هر نسخه خاصی برگردانید

ماژول 31: پروژه بلادرنگ: با استفاده از Jenkins CI/CD، یک برنامه کاربردی را در خوشه Kubernetes مستقر کنید

پروژه DevOps CI/CD بیدرنگ: با استفاده از Jenkins، یک برنامه کاربردی را در یک خوشه Kubernetes مستقر کنید.


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

معرفی DevOps Introduction DevOps

  • معرفی Introduction

  • DevOps چیست و مزایای آن چیست؟ What is DevOps and its benefits?

  • مروری بر چرخه عمر DevOps Overview of DevOps Lifecycle

  • توسعه مستمر Continuous Development

  • یکپارچه سازی مداوم Continuous Integration

  • استقرار/تحویل مستمر Continuous Deployment/Delivery

  • تست مداوم Continuous Testing

  • نظارت مستمر Continuous Monitoring

  • بازخورد مستمر Continuous Feedback

Amazon EC2 - Elastic Compute Cloud Amazon EC2 - Elastic Compute Cloud

  • یک حساب AWS ایجاد کنید Create an AWS Account

  • یک نمونه راه اندازی کنید - آمازون لینوکس Launch an Instance - Amazon Linux

  • اتصال به نمونه EC2 - MobaXterm Connect to EC2 Instance - MobaXterm

  • اتصال به EC2 Instance - Putty Connect to EC2 Instance - Putty

  • یک نمونه را راه اندازی کنید - اوبونتو Launch an Instance - Ubuntu

  • درباره کلیدهای خصوصی و عمومی About private and public keys

  • تنظیم احراز هویت بدون رمز عبور Setting up passwordless authentication

  • آزمایشگاه تمرین - نمونه های زمان واقعی Practice Lab - Real Time Examples

  • آزمایشگاه تمرین - نمونه های زمان واقعی Practice Lab - Real Time Examples

  • آزمایشگاه تمرین - نمونه های زمان واقعی Practice Lab - Real Time Examples

  • آزمایشگاه تمرین - نمونه های زمان واقعی Practice Lab - Real Time Examples

ساختار سیستم فایل لینوکس و دستورات پایه Linux Filesystem Structure and Basic Commands

  • ساختار سیستم فایل لینوکس 1 Linux Filesystem Structure 1

  • ساختار سیستم فایل لینوکس 2 Linux Filesystem Structure 2

  • تمرین - دستورات پایه لینوکس Practice - Basic Linux Commands

  • تمرین - دستورات پایه لینوکس Practice - Basic Linux Commands

مدیریت کاربران در لینوکس Manage Users in Linux

  • مروری بر مدیریت کاربر Overview of User Administration

  • آزمایشگاه - مدیریت حساب کاربری Lab - Manage User Account

  • آزمایشگاه - ایجاد کاربر و گروه Lab - User and Group Creation

  • آزمایشگاه - گروه اولیه و تکمیلی Lab - Primary and Supplementary Group

  • آزمایشگاه - فرمان Usermod Lab - Usermod Command

  • آزمایشگاه - فایل سایه Lab - Shadow file

کنترل نسخه با Git Version Control with Git

  • معرفی Git Git Introduction

  • یک حساب GitHub ایجاد کنید Create a GitHub Account

  • دستورات رایج در Git Commonly Used commands in Git

  • پیکربندی و مراحل Git در Git Git Configuration and Stages in Git

  • دستور pull and push را بزنید Git pull and push command

  • فشار Git از Local به Remote Git push from Local to Remote

  • مراحل در Git - Add & Commit Stages in Git - Add & Commit

  • گزارش Git - Commit ID، HEAD... Git log - Commit ID, HEAD...

کار با Branches - Git Working with Branches - Git

  • معرفی شعبه ها Introducing Branches

  • آزمایشگاه - ایجاد شعبه Lab - Create Branches

  • شاخه را از Local به Remote فشار دهید Push branch from Local to Remote

  • شاخه های ویژه Feature branches

  • Pull Request - برای ادغام یک شاخه در شاخه دیگر Pull Request - To merge one branch into another

  • شعبه آزاد Release Branch

  • شعبه Hotfix Hotfix Branch

  • آزمایشگاه - شعبه انتشار و رفع فوری Lab - Release & Hotfix Branch

  • با قوانین حفاظت از شعبه، یک بازبین به درخواست کشش اضافه کنید Add a reviewer to a pull request with branch protection rules

  • روابط عمومی - نظر، تأیید و درخواست تغییرات PR - Comment, Approve & Request changes

راه حل های تعارض Conflict Resolutions

  • تضادها در git ادغام می شوند Conflicts in git merge

  • یک تضاد ادغام ایجاد کنید و آن را حل کنید Create a merge conflicts & resolve it

  • از TortoiseGit S/W برای حل تعارضات استفاده کنید Use TortoiseGit S/W to resolve conflicts

  • تضادهای GitHub را با استفاده از ویرایشگر وب با استفاده از روابط عمومی حل کنید Resolve conflicts from GitHub using web editor using PR

نمونه های پروژه واقعی - موارد مبتنی بر سناریو Real Project examples - Scenario based cases

  • برای حذف فایل و dir، cmd را تمیز کنید Git clean cmd to remove file and dir

  • لغو تغییرات روی فایل های موجود Undoing changes on existing files

  • دستور Git Revert Git Revert Command

  • دستور Git Reset Git Reset Command

  • دستور واکشی Git Git fetch command

  • دستور Git pull Git pull command

  • Diff b/w git ادغام و واکشی Diff b/w git merge and fetch

GitHub Deep Drive - انتخاب Cherry، برچسب‌ها، تغییر پایه و ادغام GitHub Deep Drive - Cherry-pick, tags, rebase & merge

  • Cherry-pick در git چیست؟ What is Cherry-pick in git?

  • آزمایشگاه گیلاس با تضاد در ادغام Lab on Cherry-pick with conflicts in merging

  • تگ های Git Git tags

  • حذف برچسب ها از محلی و از راه دور Delete tags from local & remote

  • دستور Git rebase Git rebase command

  • تفاوت بین git rebase و ادغام Difference between git rebase & merge

Apache Maven - پروژه Maven Boot Spring Apache Maven - Spring Boot Maven Project

  • مقدمه ابزار Maven Introduction Maven Tool

  • چرخه زندگی Maven Maven Lifecycle

  • مخازن در Maven Repositories in Maven

  • آزمایشگاه: ساخت بسته Springboot Lab: Build Springboot package

  • آزمایشگاه: مکان‌های مصنوع و وابستگی‌های بسته Lab: Artifact Locations and Package Dependencies

  • آزمایشگاه: کاوش فایل pom.xml Lab: Exploring pom.xml file

  • آزمایشگاه: دسترسی به برنامه Spring Boot Lab: Access Spring Boot Application

  • آزمایشگاه: بررسی وابستگی های یک بسته کامپایل شده Lab: Investigating Dependencies of a Compiled Package

  • آزمایشگاه: ساخت چرخه حیات Lab: Building the Lifecycle

  • آزمایشگاه: ایجاد یک پروژه برنامه کاربردی وب با استفاده از Maven - 1 Lab: Create a Web Application Project Using Maven - 1

  • آزمایشگاه: با استفاده از Maven - 2 یک پروژه وب اپلیکیشن ایجاد کنید Lab: Create a Web Application Project Using Maven - 2

SonarQube - ابزار کیفیت کد برای کد بهتر SonarQube - Code quality tool for better code

  • ابزار SonarQube و ویژگی های آن SonarQube Tool and Its Features

  • نصب SonarQube SonarQube Installation

  • خدمات SonarQube، سیاهههای مربوط SonarQube service, logs

  • از طریق URL به SonarQube دسترسی پیدا کنید Access SonarQube via URL

  • Maven را برای ساخت بسته راه اندازی کنید Set up Maven to build the package

  • سونار اسکنر برای Maven SonarScanner for Maven

  • آزمایشگاه - SonarQube کد بد را بررسی می کند Lab - SonarQube checks for bad code

  • آزمایشگاه - کد تصحیح و دوباره توسط SonarQube بررسی شد Lab - Code corrected and rechecked by SonarQube

Maven در مخزن Nexus مستقر شود Maven Deploy to Nexus Repository

  • سرور Nexus را پیکربندی کنید Configure Nexus Server

  • پیکربندی Sonatype Nexus Repository Manager Configure Sonatype Nexus Repository Manager

  • پروژه Springboot Maven را بسازید Build Springboot Maven Project

  • الزامات Nexus در فایل pom.xml Requirements for Nexus in the pom.xml file

  • اعتبارنامه ورود به Nexus Nexus login credentials

  • مصنوعات را در مخزن Nexus آپلود کنید Upload the artifacts to the Nexus repository

جنکینز - نرم افزار اتوماسیون ابزار DevOps Jenkins - Automation Software DevOps Tool

  • مقدمه جنکینز Introduction Jenkins

  • نصب جنکینز - 1 Installation of Jenkins - 1

  • نصب جنکینز - 2 Installation of Jenkins - 2

  • نصب جنکینز - 3 Installation of Jenkins - 3

  • نصب جنکینز - 4 Installation of Jenkins - 4

  • اولین شغل خود را در جنکینز ایجاد کنید Create your first job in Jenkins

  • کاربر پیش فرض و مکان فضای کاری The default user and workspace location

  • وضعیت، آب و هوا و ثبات یک شغل The status, weather, and stability of a job

  • پانل جستجو در داشبورد جنکینز Search Panel in Jenkins Dashboard

  • مدیریت جنکینز - پیکربندی سیستم Manage Jenkins - System Configuration

  • مدیریت پلاگین ها - افزونه تم ساده را نصب کنید Manage Plugins - Install simple theme plugin

  • مدیریت پلاگین ها - پلاگین تم ساده را حذف نصب کنید Manage Plugins - Uninstall simple theme plugin

ادغام جنکینز GitHub Jenkins GitHub Integration

  • پروژه git را با استفاده از Shell کلون کنید Clone the git project using Shell

  • قبل از شروع ساخت، فضای کاری را حذف کنید Delete workspace before build starts

  • از SCM برای شبیه سازی مخزن git استفاده کنید Use SCM to clone git repository

ساخت خط لوله - تحویل مداوم در مقابل استقرار مداوم Build Pipeline - Continuous Delivery vs Continuous deployment

  • با استفاده از Build Pipeline خط لوله جنکینز را ایجاد کنید Create Jenkins Pipeline Using Build Pipeline

  • تحویل مستمر در مقابل استقرار مستمر Continuous Delivery vs Continuous deployment

  • مشاغل موازی در Jenkins Build Pipeline Parallel Jobs in Jenkins Build Pipeline

پروژه - بسته فایل WAR را با استفاده از Jenkins - CICD در سرور Tomcat مستقر کنید Project - Deploy the WAR file package to a Tomcat Server using Jenkins - CICD

  • مروری بر پروژه CICD Overview of CICD Project

  • کد را کلون کنید Clone the code

  • Maven ادغام | پلاگین جنکینز Maven Integration | Jenkins plugin

  • بسته را با استفاده از Maven بسازید Build the Package using Maven

  • سرور Tomcat9 را نصب و پیکربندی کنید Install and configure Tomcat9 Server

  • یک خط لوله را با استفاده از Build Pipeline پیکربندی کنید Configure a Pipeline using Build Pipeline

  • در نهایت فایل Package (.war) را در سرور Tomcat مستقر کنید Finally deploy the Package file (.war) to Tomcat Server

خط لوله جنکینز - خط لوله اعلامی Jenkins Pipeline - Declarative Pipeline

  • اولین خط لوله را ایجاد کنید Create the first Pipeline

  • چند مرحله در اسکریپت خط لوله Multiple stages in pipeline script

  • دستورات را با استفاده از اسکریپت خط لوله اجرا کنید Execute commands using a pipeline script

  • متغیر/محیط در اسکریپت خط لوله Variable/Environment in pipeline script

  • متغیر سطح مرحله را با استفاده از خط لوله تعریف کنید Define stage level variable using pipeline script

  • ساخت پارامترها در اسکریپت خط لوله Build parameters in pipeline script

  • پارامترهای بولی و انتخاب در اسکریپت خط لوله Boolean & choice parameters in pipeline script

  • ورودی از کاربر در اسکریپت خط لوله Input from user in pipeline script

  • اعمال را در اسکریپت خط لوله ارسال کنید Post actions in pipeline script

مدیریت پیکربندی با استفاده از Ansible Configuration Management Using Ansible

  • مقدمه Ansible Introduction Ansible

  • Ansible چیست What is Ansible

  • محدودیت های قابل قبول Ansible limitations

  • معماری Ansible Ansible Architecture

  • راه اندازی Ansible - 1 Ansible Setup - 1

  • راه اندازی Ansible - 2 Ansible Setup - 2

  • راه اندازی Ansible - 3 Ansible Setup - 3

  • راه اندازی Ansible - 4 Ansible Setup - 4

  • دستورات AD Hoc در Ansible AD Hoc Commands in Ansible

پیاده سازی Playbooks در Ansible Implementing Playbooks in Ansible

  • پیاده سازی Playbooks Implementing Playbooks

  • وظایف متعدد در Ansible Playbook Multiple tasks in Ansible Playbook

  • آزمایشگاه - کتاب بازی چند کار - 1 Lab - Multi task Playbook - 1

  • Lab - Multi task Playbook - 2 Lab - Multi task Playbook - 2

مدیریت متغیرها در Ansible Managing Variables in Ansible

  • مدیریت متغیرها در Ansible Managing Variables in Ansible

  • آزمایشگاه - متغیرها در Ansible Lab - Variables in Ansible

پیاده سازی Tasks Control در Ansible Implementing Tasks Control in Ansible

  • شرایط در Ansible Conditionals in Ansible

  • آزمایشگاه شرایط در Ansible Lab on Conditionals in Ansible

  • حلقه های Ansible - When، When_Items و غیره Ansible loops - when, when_items etc

  • نمونه هایی از حلقه های Ansible Examples of Ansible Loops

  • کنترل کننده های Ansible Ansible Handlers

  • آزمایشگاه در مورد Handler های Ansible Lab on Ansible Handlers

کانتینرسازی با استفاده از داکر Containerization using Docker

  • ظروف معرفی Introduction Containers

  • نصب داکر Installation of Docker

  • اولین ظرف را ایجاد کنید Create first container

  • تصویر کانتینر را از داکر هاب واکشی کنید Fetch the container image from Docker Hub

  • یک ظرف را در پس زمینه اجرا کنید Run a container in the background

  • ظروف را حذف کنید Delete containers

  • جزئیات کامل یک ظرف در حال اجرا را دریافت کنید Get complete details of a running container

  • سیاهههای مربوط و آمار یک کانتینر در حال اجرا را بررسی کنید Check logs and stats of a running container

  • پورت حمل و نقل Port forwarding

  • Exec، تغییر نام و راه اندازی مجدد ظرف در حال اجرا Exec, rename & restart the running container

  • دستور را در Container ضمیمه کنید Attach command in Container

  • کشتن/توقف، مکث/لغو مکث یک ظرف Kill/stop, pause/unpause a container

  • دستور ایجاد، شروع، cp Create, start, cp command

  • فرمان صادرات/واردات در داکر Export/Import Command in Docker

  • یک تصویر از ظرف در حال اجرا ایجاد کنید Create a image from running container

  • یک تصویر نسخه خاص را از داکر هاب بکشید Pull a specific version image from Docker hub

  • تصویر خود را به داکر هاب فشار دهید Push your image to docker hub

  • تاریخچه تصویر، بازرسی و حذف تصویر Image history, inspect & remove image

Dockerfile Dockerfile

  • نمای کلی Dockerfile، معماری لایه ای Overview of Dockerfile, layered architecture

  • با استفاده از Dockerfile یک تصویر centos 7 ایجاد کنید Create a centos 7 image using Dockerfile

  • بررسی اجمالی فرمان LABEL، ENV و RUN Overview of LABEL, ENV & RUN Command

  • نمای کلی WORKDIR Overview of WORKDIR

  • کپی کنید، دستور اضافه کنید با تفاوت های آنها Copy, add command with their differences

  • با استفاده از dockerfile یک حساب کاربری با رمز عبور ایجاد کنید Create a user account with password using dockerfile

  • دستور CMD CMD Command

  • SSH به یک ظرف SSH to a container

  • نمای کلی دستور EXPOSE Overview of EXPOSE Command

  • ENTRYPOINT در Dockerfile ENTRYPOINT in Dockerfile

Real Time CI/CD DevOps Project | پروژه خط لوله CI/CD End To End Real Time CI/CD DevOps Project | End To End CI/CD Pipeline Project

  • مروری بر فرآیند CI/CD An Overview of the CI/CD Process

  • یک سرور یکپارچه سازی مداوم (CI) راه اندازی کنید Set up a Continuous Integration (CI) server

  • یک سرور SonarQube راه اندازی کنید Set up a SonarQube Server

  • پروژه Maven را با SonarQube - SonarScanner for Maven ادغام کنید Integrate Maven project with SonarQube - SonarScanner for Maven

  • سرویس SonarQube را بررسی کنید Check SonarQube Service

  • کیفیت کد را بررسی کنید Check the Code Quality

  • Dockerfile برای ایجاد یک تصویر Docker Dockerfile for Creating a Docker Image

  • یک مخزن در AWS ECR ایجاد کنید Create a Repository in AWS ECR

  • نقشی ایجاد کنید که دسترسی به یک سرویس را به سرویس دیگر بدهد Create a role that grants access to one service to another

  • تصویر Docker را بسازید و به مخزن AWS ECR فشار دهید Build and push the Docker image to the AWS ECR repository

  • یک سرور استقرار مداوم (CD) راه اندازی کنید Set up a Continuous Deployment (CD) Server

  • تصویر Docker را بسازید و به مخزن AWS ECR فشار دهید Build and push the Docker image to the AWS ECR repository

  • خلاصه Recap

پروژه Real-Time CI/CD DevOps: خط لوله CI/CD انتها به انتها با استفاده از Jenkins Real-Time CI/CD DevOps Project: End-to-End CI/CD Pipeline using Jenkins

  • نصب سرور جنکینز (سرور CI) Install a Jenkins Server (CI Server)

  • جنکینز را پیکربندی کنید Configure Jenkins

  • یک خط لوله جنکینز برای پرداخت و ساخت پروژه ایجاد کنید Create a Jenkins pipeline to checkout and build the project

  • سرور SonarQube را با استفاده از ظرف Docker نصب کنید Install SonarQube Server using Docker container

  • پلاگین ها را نصب کنید و اعتبارنامه ورود Sonar را اضافه کنید Install plugins and add Sonar login credentials

  • پیکربندی SonarQube در سرور جنکینز Configure SonarQube on Jenkins Server

  • خط لوله برای اسکنر SonarQube برای جنکینز Pipeline for SonarQube Scanner for Jenkins

  • یک خط لوله برای موفقیت یا توقف ایجاد کنید Create a pipeline for success or abort

  • یک وب هوک را پیکربندی کنید Configure a webhook

  • خط لوله ای که از یک Dockerfile برای ساخت یک تصویر Docker استفاده می کند Pipeline that uses a Dockerfile to build a Docker image

  • افزودن پلاگین - CloudBees AWS، ECR، Docker Add Plugins - CloudBees AWS, ECR, Docker

  • خط لوله برای فشار دادن تصویر Docker به AWS ECR Pipeline to Push the Docker Image to AWS ECR

  • SES را برای ارسال اعلان ایمیل پیکربندی کنید Configure SES to send Email Notification

  • SES را با جنکینز با استفاده از خط لوله ادغام کنید Integrate SES with Jenkins using pipeline

  • خط لوله - پس از موفقیت یا شکست، یک اعلان ایمیل دریافت کنید Pipeline - Receive an Email Notification after the success or failure

کوبرنتیس Kubernetes

  • مقدمه ای بر Kubernetes Introduction to Kubernetes

  • رویکرد یکپارچه برای توسعه برنامه های کاربردی Monolithic approach for developing applications

  • میکروسرویس ها در مقابل یکپارچه Microservices Vs. Monolithic

  • Kubernetes Gateway API Kubernetes Gateway API

  • تکامل کانتینرها، داکر و ماشین های مجازی Evolution of Containers, Docker, and Virtual Machines

  • اجرای میکروسرویس ها به عنوان کانتینر Running microservices as containers

  • Kubernetes - ارکستراسیون/ابزار مدیریت کانتینر Kubernetes - Orchestration/Container management tool

  • ویژگی های Kubernetes Features of Kubernetes

یک خوشه Kubernetes را در یک محیط AWS راه اندازی کنید Set up a Kubernetes Cluster in an AWS Environment

  • آزمایشگاه 1 Lab 1

  • آزمایشگاه 2 Lab 2

  • آزمایشگاه 3 Lab 3

  • آزمایشگاه 4 Lab 4

  • آزمایشگاه 5 Lab 5

  • آزمایشگاه 6 Lab 6

مفاهیم Kubernetes - انواع کلاستر، سرور Minikube، YAML، Pod، Kubelet، پورت ها Kubernetes Concepts - Cluster types, Minikube Server, YAML, Pod, Kubelet, Ports

  • انواع خوشه Kubernetes Types of Kubernetes Cluster

  • نصب سرور Minikube Installation of Minikube Server

  • اولین Pod را با استفاده از YAML ایجاد کنید Create the first Pod Using YAML

  • غلاف با YAML Pods with YAML

  • جزئیات غلاف و سیاهههای مربوط به یک ظرف در حال اجرا Pod details, and logs of a running container

  • یک غلاف ایجاد کنید که حاوی چندین ظرف باشد Create a pod that contains multiple containers

  • حاشیه نویسی Kubernetes Kubernetes annotations

  • کانتینر در حال اجرا را کاوش کنید Explore running container

  • متغیرهای محیطی Environment variables

  • پورت ها را برای کانتینرها تنظیم کنید Set up ports for the containers

برچسب ها و انتخابگرها Labels and Selectors

  • معرفی برچسب ها و انتخابگرها Introduction of Labels and Selectors

  • آزمایشگاه تمرین - برچسب ها و انتخابگرها Practice Lab - Labels & Selectors

  • روشی اعلامی در مقابل ضروری برای تعریف برچسب ها Declarative vs. Imperative way to define labels

  • آزمایشگاه - غلاف را با برابری، بر اساس مجموعه جستجو کنید Lab - Search the pod with equality, set-based

  • انتخابگرهای گره Node Selectors

  • آزمایشگاه تمرین - یک غلاف برای تعیین گره ایجاد کنید Practice Lab - Create a pod to on specify node

مقیاس بندی و تکرار در Kubernetes Scaling and Replication in Kubernetes

  • Replication Controller - RC Replication Controller - RC

  • آزمایشگاه تمرین - کپی های POD را با استفاده از RC ایجاد کنید Practice Lab - Create Replicas of POD using RC

  • با افزایش بار، غلاف را بزرگ و کوچک کنید Scale-up & scale-down the pod as load increases

  • مجموعه ماکت - RS Replica set - RS

  • آزمایشگاه - کپی های POD را با استفاده از ReplicaSet ایجاد کنید Lab - Create Replicas of POD using ReplicaSet

استقرار و بازگشت در Kubernetes Deployment and Rollback in Kubernetes

  • مروری بر استقرار و بازگشت Overview of Deployment and Rollback

  • آزمایشگاه: یک برنامه را با دو POD راه اندازی کنید Lab: Launch an application with two PODs

  • آزمایشگاه: برنامه را از نسخه 1 به نسخه 2 ارتقا دهید Lab: upgrade the application from version 1 to v2

  • آزمایشگاه: برنامه را به نسخه قبلی برگردانید Lab: Roll back the application to the previous version

  • آزمایشگاه: برنامه را به هر نسخه خاصی برگردانید Lab: Roll back the application to any specific version

پروژه بلادرنگ: یک برنامه کاربردی را با استفاده از Jenkins CI/CD در یک خوشه Kubernetes مستقر کنید. Real-time project: Deploy an Appl to a Kubernetes cluster using Jenkins CI/CD

  • نمای کلی پروژه Overview of the project

  • آزمایشگاه: 1 Lab: 1

  • آزمایشگاه: 2 Lab: 2

  • آزمایشگاه: 3 Lab: 3

  • آزمایشگاه: 4 Lab: 4

  • آزمایشگاه: 5 Lab: 5

  • آزمایشگاه: 6 Lab: 6

  • آزمایشگاه: 7 Lab: 7

  • آزمایشگاه: 8 Lab: 8

  • آزمایشگاه: 9 Lab: 9

  • آزمایشگاه: 10 Lab: 10

  • آزمایشگاه: 11 Lab: 11

  • آزمایشگاه: 12 Lab: 12

  • آزمایشگاه: 13 Lab: 13

  • آزمایشگاه: 14 Lab: 14

  • آزمایشگاه: 15 Lab: 15

  • آزمایشگاه: 16 Lab: 16

  • آزمایشگاه: 17 Lab: 17

  • آزمایشگاه: 18 Lab: 18

  • آزمایشگاه: 19 Lab: 19

  • آزمایشگاه: 20 Lab: 20

  • آزمایشگاه: 21 Lab: 21

  • آخرین سخنرانی Last lecture

نمایش نظرات

نظری ارسال نشده است.

آموزش DevOps: یک برنامه فشرده 5 روزه جامع

این دوره غیر فعال شده است.

جزییات دوره
22.5 hours
264
Udemy (یودمی) udemy-small
24 فروردین 1403 (آخرین آپدیت رو دریافت می‌کنید، حتی اگر این تاریخ بروز نباشد.)
237
4.6 از 5
دارد
دارد
دارد

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Shikhar Verma • 70k+ Students Worldwide Shikhar Verma • 70k+ Students Worldwide

معمار راه حل ها و مربی فناوری اطلاعات

Udemy (یودمی)

یودمی یکی از بزرگ‌ترین پلتفرم‌های آموزشی آنلاین است که به میلیون‌ها کاربر در سراسر جهان امکان دسترسی به دوره‌های متنوع و کاربردی را فراهم می‌کند. این پلتفرم امکان آموزش در زمینه‌های مختلف از فناوری اطلاعات و برنامه‌نویسی گرفته تا زبان‌های خارجی، مدیریت، و هنر را به کاربران ارائه می‌دهد. با استفاده از یودمی، کاربران می‌توانند به صورت انعطاف‌پذیر و بهینه، مهارت‌های جدیدی را یاد بگیرند و خود را برای بازار کار آماده کنند.

یکی از ویژگی‌های برجسته یودمی، کیفیت بالای دوره‌ها و حضور استادان مجرب و با تجربه در هر حوزه است. این امر به کاربران اعتماد می‌دهد که در حال دریافت آموزش از منابع قابل اعتماد و معتبر هستند و می‌توانند به بهترین شکل ممکن از آموزش‌ها بهره ببرند. به طور خلاصه، یودمی به عنوان یکی از معتبرترین و موثرترین پلتفرم‌های آموزشی آنلاین، به افراد امکان می‌دهد تا به راحتی و با کیفیت، مهارت‌های مورد نیاز خود را ارتقا دهند و به دنبال رشد و پیشرفت شغلی خود باشند.