در این درس قصد داریم workflow مربوط به گرفتن backup از تجهیزات شبکه که در درسهای قبلی آن را آماده کرده بودیم و روی یک Docker image عمومی (Ubuntu) که از Docker Hub دانلود میشد اجرا میشد، اینبار روی یک Docker image اختصاصی اجرا کنیم.
این Docker image اختصاصی را در درس قبل با استفاده از یک workflow جداگانه خودمان ساخته و در Forgejo Container Registry ذخیره کردهایم.
مهمترین تغییری که در این درس در workflow ایجاد میکنیم، استفاده از کلیدواژههای container و image است. با استفاده از این کلیدواژهها، مسیر Docker image اختصاصی ذخیرهشده در Forgejo Registry را به workflow معرفی میکنیم و مشخص میکنیم که job مربوط به backup داخل این container اجرا شود، نه روی Docker image عمومی Ubuntu.
در نتیجه، با این روش میتوانیم وابستگیهای workflow را از خود workflow جدا کرده و اجرای jobها را کاملاً به Docker imageهای از پیش آمادهشده بسپاریم.
مواردی که در این درس بحث و پیادهسازی میشوند عبارتند از
- اجرای workflow در Forgejo با استفاده از Docker Image سفارشی
- استفاده از کلیدواژههای
containerوimageدر workflow - Pull کردن Docker image از Forgejo Container Registry
- اجرای jobهای CI/CD داخل container بهجای محیط پیشفرض runner
- سادهسازی workflow با حذف نصب وابستگیها از مراحل اجرا
