Initial TafsirQuran app with Gitea CI/CD deploy to k3s.
build-and-deploy / deploy (push) Successful in 10m50s
build-and-deploy / deploy (push) Successful in 10m50s
Blazor UI + ASP.NET API + Postgres; push to main builds images and rolls out namespace tafsirquran.
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
# تفسیر قرآن (TafsirQuran)
|
||||
|
||||
اپ تفسیر قرآن با استک .NET: ASP.NET Core API + PostgreSQL + Blazor UI مشترک (وب/PWA و MAUI Android).
|
||||
|
||||
## استقرار (Gitea + k3s)
|
||||
|
||||
- ریپو: https://git.se.kbs1.ir/admin/TafsirQuran
|
||||
- CI: `.gitea/workflows/deploy.yaml` روی runner label `deploy`
|
||||
- Namespace: `tafsirquran`
|
||||
- وب: http://185.252.31.44:30820/
|
||||
- API: http://185.252.31.44:30821/
|
||||
|
||||
پوش به `main` یا `workflow_dispatch` تصویرها را میسازد، به k3s import میکند و رولاوت میکند.
|
||||
|
||||
## پیشنیاز توسعه محلی
|
||||
|
||||
- .NET 9 SDK
|
||||
- Docker (برای PostgreSQL)
|
||||
- برای بیلد اندروید: workload `maui-android` و Android SDK
|
||||
|
||||
## اجرا (توسعه)
|
||||
|
||||
```bash
|
||||
# دیتابیس (پورت 5434 تا با Postgresهای دیگر تداخل نداشته باشد)
|
||||
docker run -d --name tafsirquran-db \
|
||||
-e POSTGRES_USER=tafsir -e POSTGRES_PASSWORD=tafsir_dev -e POSTGRES_DB=tafsirquran \
|
||||
-p 5434:5432 postgres:16-alpine
|
||||
|
||||
# API (پورت 5080)
|
||||
dotnet run --project src/TafsirQuran.Api
|
||||
|
||||
# وب / PWA
|
||||
dotnet run --project src/TafsirQuran.Web
|
||||
```
|
||||
|
||||
API Base پیشفرض وب: `http://localhost:5080/` — Connection string پیشفرض: `localhost:5434`
|
||||
|
||||
## پروژهها
|
||||
|
||||
| پروژه | نقش |
|
||||
|--------|------|
|
||||
| `TafsirQuran.Api` | REST API + فایل صوت + Auth اختیاری |
|
||||
| `TafsirQuran.Domain` | Entityها |
|
||||
| `TafsirQuran.Infrastructure` | EF Core + PostgreSQL |
|
||||
| `TafsirQuran.Shared` | DTO و کلاینت HTTP |
|
||||
| `TafsirQuran.UI` | UI مشترک Blazor |
|
||||
| `TafsirQuran.Web` | Host وب + PWA |
|
||||
| `TafsirQuran.Maui` | پوسته اندروید (Blazor Hybrid) |
|
||||
|
||||
## MAUI Android
|
||||
|
||||
نیاز به Android SDK دارد (`ANDROID_HOME`). workload: `dotnet workload install maui-android`
|
||||
|
||||
```bash
|
||||
dotnet build src/TafsirQuran.Maui -f net9.0-android
|
||||
```
|
||||
|
||||
روی امولاتور اندروید، API روی `http://10.0.2.2:5080` تنظیم شده است و `usesCleartextTraffic` برای توسعه فعال است.
|
||||
Reference in New Issue
Block a user