راهاندازی پروژه
در این سند
این راهنما مراحل راهاندازی پروژه به صورت محلی با استفاده از Docker را به صورت گامبهگام توضیح میدهد. قبل از شروع، مطمئن شوید که Docker را نصب کردهاید.
نمای کلی راهاندازی پروژه
کلون کردن پروژه
ابتدا مخزن پروژه را کلون کرده و وارد مسیر آن شوید:
git clone https://github.com/BemoBit/planet-project.git
cd /your-path/project
مسیر /your-path/project را با مسیر واقعی موردنظر خود جایگزین کنید.
تنظیم فایل محیط (Environment)
- راهاندازی استاندارد
- پیکربندی سفارشی
فایل نمونه .env را کپی کنید تا فایل تنظیمات خود را بسازید:
cp .env.example .env
ممکن است لازم باشد برخی مقادیر داخل فایل .env را متناسب با محیط خود تغییر دهید.
اگر نیاز به پیکربندی سفارشی دارید:
- فایل نمونه را کپی کنید:
cp .env.example .env - فایل
.envرا با ویرایشگر دلخواه باز کنید - مقادیر زیر را تغییر دهید:
APP_NAME=PlanetProject
APP_ENV=local
APP_DEBUG=true
DB_CONNECTION=mysql
DB_HOST=mysql
DB_PORT=3306
DB_DATABASE=planet
DB_USERNAME=planet_user
DB_PASSWORD=your_secure_password
REDIS_HOST=redis
REDIS_PORT=6379
ساخت و اجرای کانتینرهای Docker
- راهاندازی استاندارد
- بازسازی کانتینرها
از دستورات زیر برای ساخت و اجرای کانتینرها استفاده کنید:
docker compose build
docker compose up -d
مطمئن شوید همه سرویسها به درستی اجرا میشوند:
docker compose ps # بررسی وضعیت سرویسها
باید همه سرویسها را در حالت "running" مشاهده کنید.
NAME COMMAND SERVICE STATUS PORTS
lsp_app "docker-php-entrypoi…" app running 0.0.0.0:8080->80/tcp
lsp_mysql "docker-entrypoint.s…" mysql running 0.0.0.0:3306->3306/tcp
lsp_redis "docker-entrypoint.s…" redis running 0.0.0.0:6379->6379/tcp
اگر پس از ایجاد تغییرات نیاز به بازسازی کانتینرها داشتید:
docker compose down
docker compose build
docker compose up -d
نصب وابستگیهای PHP
دستور زیر را داخل کانتینر lsp_app اجرا کنید تا وابستگیهای PHP نصب شوند:
docker exec -it -u root lsp_app composer install
در صورت درخواست GitHub token، توکن خود را وارد کنید. برای نصب برخی وابستگیها نیاز به توکن است.
نصب وابستگیهای Node.js
وابستگیهای مورد نیاز فرانتاند را نصب کنید:
docker exec -it -u root lsp_app npm install
اجرای مایگریشنها
برای ساختاردهی دیتابیس، مایگریشنها را اجرا کنید:
docker exec -it -u root lsp_app php artisan migrate
گزینههای مایگریشن
اگر نیاز به ریفرش دیتابیس (حذف همه جداول و اجرای مجدد مایگریشنها) داشتید:
docker exec -it -u root lsp_app php artisan migrate:fresh
برای seed کردن دیتابیس با داده نمونه:
docker exec -it -u root lsp_app php artisan db:seed
برای ریفرش و seed همزمان:
docker exec -it -u root lsp_app php artisan migrate:fresh --seed
تولید کلید برنامه
کلید رمزنگاری برنامه را تولید کنید:
docker exec -it -u root lsp_app php artisan key:generate
لینک کردن پوشه ذخیرهسازی
پوشه ذخیرهسازی فایلها را لینک کنید:
docker exec -it -u root lsp_app php artisan storage:link
کامپایل داراییهای فرانتاند
- توسعه
- تولید
برای توسعه، داراییها را کامپایل کنید:
docker exec -it -u root lsp_app npm run dev
برای محیط تولید، داراییها را کامپایل کنید:
docker exec -it -u root lsp_app npm run build