behnamy
Registered User
سلام دوستان. میخوام توی این تاپیک در مورد Vagrant صحبت کنم و به طور خلاصه در مورد نحوه نصب و راه اندازی تا استفاده از اون رو آموزش بدم.
این آموزش ها رو صرفا برای دوستان انجمن پرشین تولز منتشر میکنم و جای دیگه ای وجود نداره، توی وب فارسی هم هیچ اثری از آموزش یا حتی مقدمه ای از اون وجود نداره، نهایتا شاید توی انجمنی یکی پرسیده باشه من نمیتونم از composer استفاده کنم یکی هم جوابش رو داده باشه من که از vagrant استفاده میکنم و مشکلی ندارم. همین! جایی نیستش به زبان فارسی که بگه این Vagrant چیه اصلا؟! یا اگر هم باشه من ندیدم.
من بیشتر با دید PHP و کمک به برنامه نویسان PHP با استفاده از Vagrant میخوام توضیح بدم، چون خودم هم از Vagrant برای این زبان استفاده میکنم، ولی ترجیح دادم به جای بخش PHP این آموزش رو توی بخش برنامه نویسی بنویسم چون Vagrant از زبان های دیگه ای هم پشتیبانی میکنه از جمله Phython و node.js و ...
خب اول یک مقدمه ای درباره Vagrant بدم. نرمافزار یا اسکریپتی که نوشتید، در محیطهای متفاوت (محیط توسعه و تولید) دچار باگهای عجیبی میشه که هنگام اجرای رسمی، با اون مواجه میشوید. مثلا شما اسکریپتتون رو با زبان PHP توی ویندوز نوشتید و حالا اونو میبرید توی هاست لینوکسی خودتون و میخواین اجرا کنید ولی اجرا نمیشه!! دلیلش تفاوت ماهیت UNIX و ویندوز هستش، مثلا شما وقتی توی ویندوز برنامه رو مینوشتید، راحت میتونستید به فایل ها دسترسی پیدا کنید و مثلا اونا رو پاک کنید ولی در وهله اول توی گنو/لینوکس به مشکل برمیخورید بخاطر بحث Permission ها، ولی خب مشکلی نیست و قابل حله.
اگر محیط توسعهی شما ویندوز و محیط تولید شما لینوکس هستش یا در قالب یک تیم فعالیت میکنید که خیلی سخته که محیطهای مختلف توسعه را با همدیگه سازگار نگه دارید، استفاده از یک ماشین مجازی را باید مد نظر داشته باشید. ممکنه کمی دشوار باشه، اما با استفاده از ابزاری مانند Vagrant میتوانید یک ماشین مجازی ساده را در کوتاهترین زمان آماده کنید. این بستههای پایه به صورت دستی قابل نصب هستند، یا میتوانید از نرمافزارهایی مانند Puppet یا Chef جهت پیادهسازی اولیهی آنها استفاده کنید. جهت اطمینان حاصل کردن از این مورد که تمام بستهها در محیطهای متفاوت، عمکرد یکسانی خواهند داشت، استفاده از این ابزارها روش مناسبی است .
Vagrant پوشههایی را جهت اشتراکگذاری کد شما روی ماشین شما و ماشین مجازی ایجاد میکند، که به این معنی است شما فایلهای خود را در ماشین خود ایجاد یا ویرایش میکنید و برنامهی شما در ماشین مجازی اجرا میشود.
با استفاده از Vagrant می توان محیط های مجازی برای توسعه و برنامه نویسی در زبان های مختلف ایجاد کرد، این نرم افزار در هر سه سیستم عامل مک ، ویندوز و لینوکس قابل نصب است.
خب مقدمه تمومه! کم کم ادامه میدم بقیه آموزش ها رو. فعلا سعی کنید سوال نپرسید توی تاپیک، تا تاپیک جلو بره و آموزش ها کامل بشه، بعدش هر مشکلی داشتید در کنار هم برطرف میکنیم.
این آموزش ها رو صرفا برای دوستان انجمن پرشین تولز منتشر میکنم و جای دیگه ای وجود نداره، توی وب فارسی هم هیچ اثری از آموزش یا حتی مقدمه ای از اون وجود نداره، نهایتا شاید توی انجمنی یکی پرسیده باشه من نمیتونم از composer استفاده کنم یکی هم جوابش رو داده باشه من که از vagrant استفاده میکنم و مشکلی ندارم. همین! جایی نیستش به زبان فارسی که بگه این Vagrant چیه اصلا؟! یا اگر هم باشه من ندیدم.
من بیشتر با دید PHP و کمک به برنامه نویسان PHP با استفاده از Vagrant میخوام توضیح بدم، چون خودم هم از Vagrant برای این زبان استفاده میکنم، ولی ترجیح دادم به جای بخش PHP این آموزش رو توی بخش برنامه نویسی بنویسم چون Vagrant از زبان های دیگه ای هم پشتیبانی میکنه از جمله Phython و node.js و ...
خب اول یک مقدمه ای درباره Vagrant بدم. نرمافزار یا اسکریپتی که نوشتید، در محیطهای متفاوت (محیط توسعه و تولید) دچار باگهای عجیبی میشه که هنگام اجرای رسمی، با اون مواجه میشوید. مثلا شما اسکریپتتون رو با زبان PHP توی ویندوز نوشتید و حالا اونو میبرید توی هاست لینوکسی خودتون و میخواین اجرا کنید ولی اجرا نمیشه!! دلیلش تفاوت ماهیت UNIX و ویندوز هستش، مثلا شما وقتی توی ویندوز برنامه رو مینوشتید، راحت میتونستید به فایل ها دسترسی پیدا کنید و مثلا اونا رو پاک کنید ولی در وهله اول توی گنو/لینوکس به مشکل برمیخورید بخاطر بحث Permission ها، ولی خب مشکلی نیست و قابل حله.
اگر محیط توسعهی شما ویندوز و محیط تولید شما لینوکس هستش یا در قالب یک تیم فعالیت میکنید که خیلی سخته که محیطهای مختلف توسعه را با همدیگه سازگار نگه دارید، استفاده از یک ماشین مجازی را باید مد نظر داشته باشید. ممکنه کمی دشوار باشه، اما با استفاده از ابزاری مانند Vagrant میتوانید یک ماشین مجازی ساده را در کوتاهترین زمان آماده کنید. این بستههای پایه به صورت دستی قابل نصب هستند، یا میتوانید از نرمافزارهایی مانند Puppet یا Chef جهت پیادهسازی اولیهی آنها استفاده کنید. جهت اطمینان حاصل کردن از این مورد که تمام بستهها در محیطهای متفاوت، عمکرد یکسانی خواهند داشت، استفاده از این ابزارها روش مناسبی است .
Vagrant پوشههایی را جهت اشتراکگذاری کد شما روی ماشین شما و ماشین مجازی ایجاد میکند، که به این معنی است شما فایلهای خود را در ماشین خود ایجاد یا ویرایش میکنید و برنامهی شما در ماشین مجازی اجرا میشود.
با استفاده از Vagrant می توان محیط های مجازی برای توسعه و برنامه نویسی در زبان های مختلف ایجاد کرد، این نرم افزار در هر سه سیستم عامل مک ، ویندوز و لینوکس قابل نصب است.
خب مقدمه تمومه! کم کم ادامه میدم بقیه آموزش ها رو. فعلا سعی کنید سوال نپرسید توی تاپیک، تا تاپیک جلو بره و آموزش ها کامل بشه، بعدش هر مشکلی داشتید در کنار هم برطرف میکنیم.