61 lines
1.4 KiB
Markdown
61 lines
1.4 KiB
Markdown
# Persian Game frontend
|
|
|
|
رابط کاربری React + TypeScript این پروژه با Vite ساخته و در محیط production توسط Nginx سرو میشود.
|
|
|
|
## اجرای Docker
|
|
|
|
پیشنیازها: Docker Engine و Docker Compose v2.
|
|
|
|
```bash
|
|
cp .env.example .env
|
|
docker compose up --detach --build
|
|
```
|
|
|
|
سپس برنامه روی `http://localhost:8080` در دسترس است. برای مشاهده وضعیت و لاگها:
|
|
|
|
```bash
|
|
docker compose ps
|
|
docker compose logs --follow web
|
|
```
|
|
|
|
برای توقف برنامه:
|
|
|
|
```bash
|
|
docker compose down
|
|
```
|
|
|
|
اسکریپت زیر نیز Compose را اعتبارسنجی، image را build و سرویس را اجرا میکند:
|
|
|
|
```bash
|
|
./build.sh
|
|
```
|
|
|
|
## تنظیمات
|
|
|
|
مقادیر قابل تنظیم در `.env`:
|
|
|
|
- `APP_PORT`: پورت میزبان؛ مقدار پیشفرض `8080` است.
|
|
- `VITE_API_URL`: آدرس کامل API؛ مقدار پیشفرض `https://api.persain-game.com/api/v1` است.
|
|
- `PERSIAN_GAME_IMAGE`: نام و tag ایمیج ساختهشده.
|
|
|
|
متغیر `VITE_API_URL` هنگام build داخل فایلهای استاتیک قرار میگیرد. پس از تغییر آن باید image را دوباره build کنید:
|
|
|
|
```bash
|
|
docker compose build --no-cache web
|
|
docker compose up --detach web
|
|
```
|
|
|
|
## توسعه محلی بدون Docker
|
|
|
|
```bash
|
|
npm ci
|
|
npm run dev
|
|
```
|
|
|
|
بررسی production build و lint:
|
|
|
|
```bash
|
|
npm run build
|
|
npm run lint
|
|
```
|