یک دانشجوی رشته نرم افزار و توسعه دهنده وب که علاقه مند به چالش و یادگیریه
راه اندازی داکر برای پروژه های لاراولی با laradock
خوب اگه با داکر کار کرده باشید میدونید که سخت ترین و البته حوصله سربرترین قسمت یه پروژه میتونه راه اندازی داکر باشه،شما باید ایمیج های مختلف رو کانفیگ کنید و توی این پروسه ممکنه به هزارتا ارور مختلف بخورید و خارج از اون کلی وقتتون گرفته بشه.
اما یه تیم خفن اومدن و یه محیط توسعه فوق العاده حرفه ای و خفن برای php آماده کردن و شما میتونید خیلی ساده و بدون انجام دادن کار خاصی داکر رو روی پروژتون راه اندازی کنید
محیط توسعه Laradock
خب این محیط توسعه خفن و حرفه ای که عرض کردم خدمتتون اسمش laradock هستش.توی این پروژه هرچی که فکرش رو بکنید هستش و میتونید خیلی ساده با صدا زدن اسمش فعالش کنید.چیا هستش مثلا؟وب سرویس apache,nginx,... و دیتابیس های mysql,mongodb,postgresql , .... و سرویس کش redis و کلی سرویس دیگه.
خب کافیه دیگه بریم سراغ راه اندازی اولین پروژمون:)
راه اندازی Laradock
خب من میخام برای مثال یک پروژه لاراولی رو با کمک laradock ایجاد کنم:
خب اولین مرحله کافیه به پوشه پروژتون برید و ترمینال رو باز کنید و دستور زیر رو بزنید(یک نسخه از پروژه laradock رو برای شما کلون میکنه)
git clone https://github.com/Laradock/laradock.git
خب حالا با دستور زیر وارد فولدر laradock خودمون میشیم و بعدش دستور دوم رو هم برای ساخت فایل .env (فایل پیکربندی پروژه) میزنیم
cd laradock
cp .env.example .env
خب حالا وارد فایل .env میشیم،اینجا فایل پیکربندی سرویس های laradock هستش،اگه نیاز به تغییر خاصی باشه میتونیم اینجا تغییراتمون رو اعمال کنیم و پروژه رو مجددا بیلد کنیم.خب بگذریم اینجا یک ایتم مهم وجود داره که اون آدرس روت اصلی پروژه رو مشخص میکنه.به صورت پیشفرض به این شکله:
APP_CODE_PATH_HOST=../
این داره اشاره میکنه که اگه ما از پوشه laradock خودمون یه مرحله بریم عقب،اونجا روت اصلی پروژه ما هستش.منظورم اینکه ساختار فولدرهامون به این شکله:
project
-laradock
خب بعد از این لازمه تا وارد پوشه nginx بشیم،بعدش فولدر sites و از فایل laravel.conf.example یه کپی به این اسم ایجاد میکنیم laravel.conf (حتما توجه کنید کهexample. آخر رو حذف کنید)
خب الان وقتش هست تا آدرس های زیر رو توی فایل hosts سیستممون قرار بدیم تا به عنوان آدرس لوکال هاست شناسایی بشن.
اگه کاربر ویندوز هستید وارد آدرس زیر بشید.
c:\Windows\System32\Drivers\etc\hosts
و با یک تکست ادیتور مثل notpad++ اجراش کنید و دوخط زیر رو بهش اضافه کنید.
127.0.0.1 localhost
127.0.0.1 laravel.test
اگه از کاربرای لینوکس هستید nano رو نصب کنید و با دستور زیر فایل hosts خودتون رو باز کنید:
sudo nano /etc/hosts
و دوخط زیر رو بهش اضافه کنید.
127.0.0.1 localhost
127.0.0.1 laravel.test
خب دیگه کارمون تموم هست.رسیدیم به لذت بخش ترین قسمت کار،الان کافیه اسم سرویس هایی که نیاز دارید رو صدا بزنید تا پروژتون بالا بیاد.چون من یه پروژه ساده دارم از دستور زیر استفاده میکنم
docker-compose up -d --build nginx mysql phpmyadmin
مثلا اگه شما توی پروژتون از redis هم استفاده میکردید میتونستید دستور زیر رو بزنید
docker-compose up -d --build nginx mysql phpmyadmin redis
خب حالا دیگه باید یه مقدار منتظر بمونید تا مواردی که لازمه دانلود و کانفیگ بشه.ممکنه برای دفعه اول یه مقدار زمانبر باشه اما نگران نباشید دفعه های بعد تنها چندثانیه زمان میبره.
اما یه سری تغییرات هم لازمه داخل فایل .env پروژه لاراولی خودتون بدید:
DB_HOST=mysql
REDIS_HOST=redis
QUEUE_HOST=beanstalkd
تموم شد الان دیگه میتونید لوکال هاست رو باز کنید و صفحه اصلی پروژتون رو ببینید،برای کار با phpmyadmin هم کافیه این آدرس رو باز کنید و با اطلاعات زیر میتونید وارد شید.
server : mysql
username: default
password: secret
اگه هم نیاز دارید به عنوان کاربر root وارد بشید کافیه یوزرنیم و پسورد رو root وارد کنید.
برای اینکه بتونید وارد محیط کامندلاین پروژه بشید و دستورات composer یا artisan رو بزنید هم کافیه دستور زیر رو بزنید
docker-compose exec workspace bash
حالا دیگه میتونید دستورات خودتون رو وارد کنید و حتی اگه خود پروژه لاراولتون رو هم نصب نکردید حالا خیلی ساده با دستور زیر میتونید اوکیش کنید:
composer create-project laravel/laravel .
امیدوارم که با موفقیت به این مرحله رسیده باشید:)
سوالی داشتید توی کامنت ها بپرسید حتما ?
مطلبی دیگر از این انتشارات
۵ مرحله برای طراحی یک دیتابیس با ساختار مناسب !!
مطلبی دیگر از این انتشارات
یادگیری مقدماتی لاراول - پارت دوازدهم
مطلبی دیگر از این انتشارات
پیاده سازی نوتیفیکیشن ها با لاراول