توسعه پروژه های لاراول باداکر

بی شک،امروزه در رابطه با داکر و همچنین مزیت های استفاده از آن در طراحی اپلیکیشن ها شنیده اید،گفتنی است که ما می توانیم برای اجرای سرور خود نیز از داکر استفاده کنیم در ادامه به شما نحوه استفاده از داکر در محیط اجرایی خود را در سایتکد که یک شرکت طراحی وب است آموزش می دهیم

مزیت های استفاده از داکر:

روند اجرایی برنامه یا اپلیکیشن به آسانی طی می شود ما بااستفاده از داکر می توانیم شاهد برابری محیط اجرایی در کامپیوتر یعنی محیط لوکال و سرور باشیم نصب و اجرای داکر به خودیه خود کافی است و نیازی به نصب (php)ندارد .

چکیده ای در رابطه با داکر:

داکر به تنهایی بک محیط برای اجرای برنامه هاست ما برای اجرای برنامه خود با استفاده با داکر می بایست از ایمیج های موجودی که خودمان ساختیم استفاده کنیم،که هر کدام از این ایمیج ها شامل دستوراتی هستند که بر روی لینوکس اجرا می شوند در این باره مثالی می زنیم: مثلا ایمیج (php)تمامیه دستوراتی که برای نصب (php)را در خود دارد که روی ایمیج (ubuntu)ذخیره شده است.

چکیده ای در رابطه با داکر کامپوز :

در ادامه با یکی از شاخص ترین ابزار های داکر اشنا می شویم،که طراح سایت نام آن داکر کامپوز گذاشته است. قابلیت استفاده از کامپوز این است که رابطه برقرار کردن بین شبکه های خصوصی را براحتی ایجاد می کند. •
•ویژگی محیط هایی که قابلیت اجرای داکر را دارند:
•وجود یک کانتینر از ایمیج(mysQl v8)برای دیتابیس اصلی
•وجود یک کانتینر از ایمیج (Redis-v6)برای استوریج کش
• وجود یک کانتینر از ایمیج (NGINX) برای وب سرور
•وجود یک کانتینر از (Dockerfile)مشخص شده در رابطه با (php)
• وجود یک کانتینر از ایمیج (php)برای مدیریت و توانایی اجرایjob در لاراول

این برنامه در چه محیط هایی قابلیت اجرا را دارد؟

در محیطی که برای اجرا ثبت شده است،در خواست های (HTTP)کاربران با استفاده از کانتینر(NGINX)ثبت می شود در نتیجه وب سرور(NGINX)برای راه اندازی اسکریپت های (php)در کانتینر آن در خواست خود را ثبت می کند گفتنی است که در این جا ما دو کانتنیر داریم که در ایجاد عملکرد اجرایی(job)و(Task)تاثیر گذار هستند که اصطلاح آن ها(Horizon)و(Cron)می باشد. کانتینر هایی که به واسطه داکر قابلیت اجرایی پیدا می کنند،به تنهایی می توانند عملکرد های سرورهای مستقل و کوچک را در شبکه های خصوصی اجرا کنند. نحوه برقرای ارتباط بین کانتینر ها به واسطه شبکه موجود و با استفاده از نام ثبت شده از سرویس آنها می باشد. برای مثال اگر دیتابیس ما (Mysql)بود نام سرویس دیتابیس (Mysql)با هاست (Mysql) در دسترسی ما قرار می گیرد.

نحوه ایجاد پروژه:

برای شکل گیری پروژه خود می بایست ابتدا داکر و ابزار کلیدی آن یعنی داکر کامپوز را روی سیستم خود نصب کنیم و برای شروع کد دستوری زیر را در پوشه خود ذخیره کنیم: docker-compose up -d برای کنترل وضعیت و مشاهده عملکرد های کانتینرهای خود از کد دستوری زیر استفاده خواهیم کرد: docker-compose ps در ادامه نکات کوتاه اما موثر دررابطه با اموزش داکر را ذکر خواهیم کرد:

اطلاعات (Mysql):

پوشه (Mysql) بلافاصله پس از اجرای پروژه با استفاده از کامپوز ایجاد می شود،و تمامی فایل های مربوطه به آن که تمامیه اطلاعات دیتابیس پروژه می باشد در آن ذخیره خواهد شد

دسترسی به (Mysql):

برای راحتی کار در رابطه با محیط اجرایی طراحی شده توسط طراح وب شیوه ها و راه حل هایی هنوز توصیه نشده است ما با استفاده از یوزر (root) می توانیم با استفاده از کلاینت های دیتابیس به (Mysql) دسترسی پیدا کنیم.

توسعه پروژه های لاراول باداکر

اطلاعات (Redis) :

به طور خودکار،سرویس (Redis)به صورتی (Setup) شده است که تمامی اطلاعات را در کارگردانی مثل (data),(redis),(dacker) ذخیره شود تا پس از روشن و خاموش کردن اطلاعات ذخیره شده در آن از بین نرود.

ایمیج های قابل استفاده:

در فایل (docker-compose.yml) از نسخه پایانی از Docker Image های که در این مقاله ذکر شده است استفاده می شود . در این محیط اجرایی از (تگ) های دقیق که جایگزین latest است استفاده شده چرا که لازم است از تگ های تکراری استفاده نشود. برای صرفه نظر گرفتن از محدودیت ایجاد شده از طرف(http://hub.docker.com)برای کشور ایران، ایمیج های رسمی را در گیتهاب ذخیره می کنیم.

نحوه استفاده ازکانتینر (cron)

این کانتینر شباهت فراوانی به کانتینر (horizon) دارد برای اجرای تسک های برنامه ریزی شده به کار می‌رود. کار خاصی برای استفاده از آن لازم و ضروری نیست انجام داد و قوانین خاصی ندارد نکته کوتاه اما مفید در این مقاله این است که همیشه می بایست تنظیمات مربوط به داکر خود را روی گیت یا بر روی هاب خود داکر ارسال نماییم. و همچنین گفتنی است که نکته های بسیار زیادی در رابطه با ایجاد یک محیط اجرایی برای داکر وجود دارد،و همچنین ابزارهای مورد نیاز و چه بسا طریقه استفاده از این ابزار ها در محیط های اجرایی ایجاد شده است که این ها در معدود مقاله هایی ذکر شده است