ما ساعت ۱۶ میت اینتروداکشن این دوره رو با هم برگزار میکنیم و در مورد این که چه کارهایی میخوایم بکنیم و پروژهای که میخوایم با هم جلو ببریم چیه اینجا صحبت میکنیم:
meet.google.com/fvd-svch-kan
meet.google.com/fvd-svch-kan
Google
Real-time meetings by Google. Using your browser, share your video, desktop, and presentations with teammates and customers.
❤4👍4
MostafaOps
MostafaOps-Phase1.pdf
از هیچ قسمت از پروژه نترسین، کلید انجام دادنش اینه که نترسین، چندتا لینک هم گذاشتم. مثال هم کم نیست توی اینترنت!
مطمئنم از پسش برمیاید 🤓
مطمئنم از پسش برمیاید 🤓
👍1
پروژه رو بخونین، لینکهای داخلش رو هم بخونین
تلاشتون رو بکنین
فردا میایم و حلش میکنیم و کارهایی بچههای گروه اختصاصی انجام دادن رو دیباگ میکنیم 😉
تلاشتون رو بکنین
فردا میایم و حلش میکنیم و کارهایی بچههای گروه اختصاصی انجام دادن رو دیباگ میکنیم 😉
MostafaOps
MostafaOps-Phase1.pdf
دوستان عزیزی که تازه توی گیتلب ثبتنام کردن، نمیتونن از رانرهای رایگان گیتلب استفاده کنن
بهشون توصیه میکنم توی لوکالشون یه گیتلب رانر ستاپ کنن و از اون استفاده کنن
https://alirezarezvani.medium.com/easy-steps-to-setup-your-own-gitlab-runner-on-gitlab-or-locally-e6618212c442
این لینک رو میتونین بخونین برای این موضوع
بهشون توصیه میکنم توی لوکالشون یه گیتلب رانر ستاپ کنن و از اون استفاده کنن
https://alirezarezvani.medium.com/easy-steps-to-setup-your-own-gitlab-runner-on-gitlab-or-locally-e6618212c442
این لینک رو میتونین بخونین برای این موضوع
Medium
Easy steps to setup your own gitlab runner on GitLab or locally
However, I can provide you with instructions on how to set up a GitLab Runner.
👍3
خب دم همهی کسایی که خارج از گروه اختصاصی و داخل گروه اختصاصی روی فاز اول پروژه وقت گذاشتن
برای خودم که تا اینجای مسیر خیلی جذاب بوده 🤓🔥
امروز ساعت ۱۶ منتظر همهتون هستم که بریم این قسمت رو با هم حل کنیم و کیف کنیم 🤓
توی این جلسه اول خودم فاز اول پروژه رو حل میکنم، و بعد اعضای گروه اختصاصی هر کدوم نشون میدن چیکار کردن و من اگه نکتهای باشه میگم که بهترش بکنن!
لینک جلسه:
https://meet.google.com/fvd-svch-kan
میبینمتون ❤️
برای خودم که تا اینجای مسیر خیلی جذاب بوده 🤓🔥
امروز ساعت ۱۶ منتظر همهتون هستم که بریم این قسمت رو با هم حل کنیم و کیف کنیم 🤓
توی این جلسه اول خودم فاز اول پروژه رو حل میکنم، و بعد اعضای گروه اختصاصی هر کدوم نشون میدن چیکار کردن و من اگه نکتهای باشه میگم که بهترش بکنن!
لینک جلسه:
https://meet.google.com/fvd-svch-kan
میبینمتون ❤️
Google
Real-time meetings by Google. Using your browser, share your video, desktop, and presentations with teammates and customers.
👍2
https://gitlab.com/mostafabayat76/mostafaops
این هم ریپوزیتوریایه که سعی میکنم همهی قسمتهای پروژه رو روش پوش بکنم و در آینده اگه دوست داشتین مورد استفاده قرار بدین
این هم ریپوزیتوریایه که سعی میکنم همهی قسمتهای پروژه رو روش پوش بکنم و در آینده اگه دوست داشتین مورد استفاده قرار بدین
🙏6❤3
خلاصهی جلسهی آنلاین اول:
در قدم اول اومدیم یه پروژه ساختیم و با استفاده از فایل
گفتیم مفاهیم اصلی و بنیادینش ایناست:
1. pipelines
که میتونی برای کارهای مختلفی که میخوای به صورت اتوماتیک انجام بشه پایپلاین تعریف کنی، مثلا ساخت اپلیکیشن و دیپلوی و آپدیتش توی پروداکشن
2. stages
هر پایپلاین از تعدادی استیج تشکیل شده، که به صورت پشت سر هم اجرا میشن، و نه به صورت موازی
3. jobs
هر استیج از تعدادی جاب تشکیل شده که شما میتونین با زبان yaml اون رو کاملاً تعیین کنید
سادهترین فایل .gitab-ci.yml:
بعدش در مورد رانر صحبت کردیم، گفتیم رانر چیزیه که جابهای تعریف شده در ci/cd رو اجرا میکنه، و یه سرور یا یه کانتینر یا همچین چیزیه که بتونه یه سری دستورات رو اجرا کنه
۱. رانرها یا توسط gitlab.com راهاندازی شدن و در اختیار همه قرار گرفتن (که برای یوزرهای جدید بدون شماره خارجی غیرفعاله)
۲. یا توسط خودمون راهاندازی میشن و به gitlab.com متصل میشن
این رانرها :
1. instance runners
که میتونن جابهای همهی پروژهها رو اجرا کنن
2. group runners
که میتونن جابهای پروژههای داخل یک گروه رو اجرا کنن
3. project runners
که فقط مخصوص یک پروژه هستن
ولی نصب همهی اینها به یک شکله و تفاوتی نمیکنه
ما تصمیم گرفتیم از طریق داکر رانر رو نصب کنیم، و executer اون رو هم داکر تعریف کنیم!
ابتدا از طریق
settings > CI/CD > Runners > New Runner
یه رانر میسازیم و authentication token رو کپی میکنیم
سپس با استفاده از این کامند یک کانتینر موقت میسازیم و رانر رو رجیستر میکنیم
مهمه که بدونیم باید /etc/gitlab-runner رو به یه دایرکتوری مطمئن mount کنیم که پرسیست باشه و بتونیم بعدا ازش استفاده کنیم
سپس با استفاده از docker-compose رانر رو اجرا میکنیم:
نکتهی مهم mount کردن docker.sock به کانتینره که به رانر قدرت ایجاد کانتینر به ازای هر جاب رو میده (با توجه به این که ما executer رو داکر گذاشتیم) و سپس توی پروژهمون میتونیم ببینیم که رانرمون سبز شده و قابل استفادهست
در قدم اول اومدیم یه پروژه ساختیم و با استفاده از فایل
.gitlab-ci.yml براش پایپلاین ساختیم!گفتیم مفاهیم اصلی و بنیادینش ایناست:
1. pipelines
که میتونی برای کارهای مختلفی که میخوای به صورت اتوماتیک انجام بشه پایپلاین تعریف کنی، مثلا ساخت اپلیکیشن و دیپلوی و آپدیتش توی پروداکشن
2. stages
هر پایپلاین از تعدادی استیج تشکیل شده، که به صورت پشت سر هم اجرا میشن، و نه به صورت موازی
3. jobs
هر استیج از تعدادی جاب تشکیل شده که شما میتونین با زبان yaml اون رو کاملاً تعیین کنید
سادهترین فایل .gitab-ci.yml:
stages:
print-message:
stage: print
image: reg-pub.pegah.tech/docker.io/library/ruby:2.7
script:
- echo "Let's use Gitlab CI/CD"
بعدش در مورد رانر صحبت کردیم، گفتیم رانر چیزیه که جابهای تعریف شده در ci/cd رو اجرا میکنه، و یه سرور یا یه کانتینر یا همچین چیزیه که بتونه یه سری دستورات رو اجرا کنه
۱. رانرها یا توسط gitlab.com راهاندازی شدن و در اختیار همه قرار گرفتن (که برای یوزرهای جدید بدون شماره خارجی غیرفعاله)
۲. یا توسط خودمون راهاندازی میشن و به gitlab.com متصل میشن
این رانرها :
1. instance runners
که میتونن جابهای همهی پروژهها رو اجرا کنن
2. group runners
که میتونن جابهای پروژههای داخل یک گروه رو اجرا کنن
3. project runners
که فقط مخصوص یک پروژه هستن
ولی نصب همهی اینها به یک شکله و تفاوتی نمیکنه
ما تصمیم گرفتیم از طریق داکر رانر رو نصب کنیم، و executer اون رو هم داکر تعریف کنیم!
ابتدا از طریق
settings > CI/CD > Runners > New Runner
یه رانر میسازیم و authentication token رو کپی میکنیم
سپس با استفاده از این کامند یک کانتینر موقت میسازیم و رانر رو رجیستر میکنیم
docker run --name runner --rm -it -v /tmp/mostafaops/runner/config:/etc/gitlab-runner --entrypoint bash gitlab/gitlab-runner:v17.3.1
gitlab-runner register --url https://gitlab.com --token <token>
مهمه که بدونیم باید /etc/gitlab-runner رو به یه دایرکتوری مطمئن mount کنیم که پرسیست باشه و بتونیم بعدا ازش استفاده کنیم
سپس با استفاده از docker-compose رانر رو اجرا میکنیم:
services:
gitlab-runner:
image: reg-pub.pegah.tech/docker.io/gitlab/gitlab-runner:v17.3.1
container_name: runner
restart: always
volumes:
- ./config:/etc/gitlab-runner
- /var/run/docker.sock:/var/run/docker.sock
نکتهی مهم mount کردن docker.sock به کانتینره که به رانر قدرت ایجاد کانتینر به ازای هر جاب رو میده (با توجه به این که ما executer رو داکر گذاشتیم) و سپس توی پروژهمون میتونیم ببینیم که رانرمون سبز شده و قابل استفادهست
❤12👍3
فردا ساعت ۱۸ میبینمتون ❤️
شاید فاز بعدی رو هم برای کسایی که پروژه رو انجام دادن زودتر توی چنل گذاشتم ✋
شاید فاز بعدی رو هم برای کسایی که پروژه رو انجام دادن زودتر توی چنل گذاشتم ✋
👍6👌2🙏1
از فاز بعدی میخوایم وارد کوبرنتیز بشیم که قسمت جذاب ماجراست 🤓
کسانی که فاز اول رو بدون مشکل انجام دادن و سوالی ندارن میتونن با خوندن این دوتا لینک شروع کنن:
https://medium.com/@mfsilv/kubernetes-a-gentle-introduction-9d23de7f00e0
https://medium.com/@mfsilv/kubernetes-for-dummies-the-cluster-7cf6a7b5532
کسانی که فاز اول رو بدون مشکل انجام دادن و سوالی ندارن میتونن با خوندن این دوتا لینک شروع کنن:
https://medium.com/@mfsilv/kubernetes-a-gentle-introduction-9d23de7f00e0
https://medium.com/@mfsilv/kubernetes-for-dummies-the-cluster-7cf6a7b5532
Medium
Kubernetes for dummies: introduction
Part 1 — What is kubernetes after all?
🔥4❤2
دوستان عذر میخوام
من از دیشب یه مشکلی برام پیش اومد و امروز نمیتونم در خدمتتون باشم
ایشالا فردا هم خلاصهی جلسهی دیروز و هم توضیحات مربوط به فاز بعدی پروژه رو میذارم براتون
ممنونم بابت بردباریتون 🙃❤️
من از دیشب یه مشکلی برام پیش اومد و امروز نمیتونم در خدمتتون باشم
ایشالا فردا هم خلاصهی جلسهی دیروز و هم توضیحات مربوط به فاز بعدی پروژه رو میذارم براتون
ممنونم بابت بردباریتون 🙃❤️
🙏10❤5
