docs: مشکل ۱۴-۱۶ — K8S_SERVER اشتباه, نبود appsettings.Production, nginx image path
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
|
||||
> آخرین بروزرسانی: February 17, 2026
|
||||
> ۲۲۰ فایل → ۳۰ فایل (تجمیع ۳ فازی + cleanup نهایی)
|
||||
> آخرین تغییرات: فیکس ZarinPal callback، تخفیف ۱۰۰٪ اجباری، VAT checkout، ExpirePendingOrders، فیکس DeliveryStatus mapping، دیپلوی Production، فیکس CI/CD cross-deploy
|
||||
> آخرین تغییرات: فیکس ZarinPal callback، تخفیف ۱۰۰٪ اجباری، VAT checkout، ExpirePendingOrders، فیکس DeliveryStatus mapping، دیپلوی Production، فیکس CI/CD cross-deploy، ساخت appsettings.Production.json هر ۳ پروژه، فیکس K8S_SERVER، فیکس nginx image path
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -613,4 +613,66 @@ jobs:
|
||||
| **Registry** | `194.5.195.53:30080` (local) | همان staging registry |
|
||||
| **Image Tags** | `:latest` | `:prod` + `:sha` |
|
||||
| **Branch** | `kub-stage` | `production` |
|
||||
| **Domains** | `*.se.kbs1.ir` | `*.kbs1.ir` |
|
||||
| **Domains** | `*.se.kbs1.ir` | `*.kbs1.ir` |
|
||||
|
||||
---
|
||||
|
||||
## 🐛 مشکل ۱۴: K8S_SERVER اشتباه در prod-deploy.yml (CMS + BackOffice)
|
||||
|
||||
**تاریخ:** February 17, 2026
|
||||
**علت:** `K8S_SERVER` در `prod-deploy.yml` CMS و BackOffice هنوز `194.5.195.53` (staging) بود بجای `45.149.79.127` (production).
|
||||
**عارضه:** `kubectl set image` به سرور staging ارسال میشد — deployment production آپدیت نمیشد.
|
||||
|
||||
**فایلهای فیکس شده:**
|
||||
- `CMS/.gitea/workflows/prod-deploy.yml` — `K8S_SERVER: 194.5.195.53` → `45.149.79.127`
|
||||
- `BackOffice/.gitea/workflows/prod-deploy.yml` — `K8S_SERVER: 194.5.195.53` → `45.149.79.127`
|
||||
- FrontOffice قبلاً درست بود ✅
|
||||
|
||||
**فیکس اضافی:** هر دو workflow از `kubectl rollout restart` به `kubectl set image` تغییر کردن تا ایمیج SHA-tagged واقعاً set بشه.
|
||||
|
||||
---
|
||||
|
||||
## 🐛 مشکل ۱۵: نبود appsettings.Production.json — URLهای staging روی production
|
||||
|
||||
**تاریخ:** February 17, 2026
|
||||
**علت:** هیچکدوم از ۳ پروژه `appsettings.Production.json` نداشتن. از طرفی `ASPNETCORE_ENVIRONMENT=Production` ست بود → fallback به `appsettings.json` (که URLهای staging داشت).
|
||||
|
||||
**عارضهها:**
|
||||
- CMS: `CmsBaseUrl=cms.se.kbs1.ir` → ZarinPal callback به staging برمیگشت
|
||||
- CMS: `FrontOfficeBaseUrl=foursat.se.kbs1.ir` → redirect بعد از پرداخت به staging میرفت
|
||||
- FrontOffice: `GwUrl=localhost:32846` → gRPC به هیچجا وصل نمیشد
|
||||
- BackOffice: `GwUrl=localhost:32847` → gRPC به هیچجا وصل نمیشد
|
||||
|
||||
**فایلهای ساخته شده:**
|
||||
|
||||
| پروژه | فایل | محتوای کلیدی |
|
||||
|--------|------|-------------|
|
||||
| CMS | `src/CMSMicroservice.WebApi/appsettings.Production.json` | `CmsBaseUrl=cms.kbs1.ir`, `FrontOfficeBaseUrl=kbs1.ir`, `DB=KBS`, `ZarinPal.UseSandbox=false` |
|
||||
| FrontOffice | `src/FrontOffice.Main/appsettings.Production.json` | `GwUrl=cms.kbs1.ir` |
|
||||
| BackOffice | `src/BackOffice/wwwroot/appsettings.Production.json` | `GwUrl=cms.kbs1.ir` |
|
||||
|
||||
> ⚠️ **نکته:** CMS فایل `appsettings.Production.json` در `.gitignore` هست (`**/ appsettings.Production.json`). با `git add -f` ترک شد. بعد از هر تغییر باید دوباره force add بشه.
|
||||
|
||||
---
|
||||
|
||||
## 🐛 مشکل ۱۶: nginx image path اشتباه در BackOffice Dockerfile (production branch)
|
||||
|
||||
**تاریخ:** February 17, 2026
|
||||
**علت:** Dockerfile روی برنچ `production` از `194.5.195.53:32082/library/nginx:alpine` استفاده میکرد که در رجیستری وجود نداشت. روی `kub-stage` قبلاً فیکس شده بود ولی merge به production این خط رو override کرده بود.
|
||||
|
||||
**ارور CI:**
|
||||
```
|
||||
Step 9/14 : FROM 194.5.195.53:32082/library/nginx:alpine AS final
|
||||
manifest for 194.5.195.53:32082/library/nginx:alpine not found: manifest unknown
|
||||
```
|
||||
|
||||
**رفع:**
|
||||
```dockerfile
|
||||
# قبل (اشتباه)
|
||||
FROM 194.5.195.53:32082/library/nginx:alpine AS final
|
||||
|
||||
# بعد (صحیح)
|
||||
FROM 194.5.195.53:32082/nginx:alpine AS final
|
||||
```
|
||||
|
||||
**نکته:** این فیکس مستقیماً روی برنچ `production` انجام و push شد (کامیت `743403e`).
|
||||
@@ -47,8 +47,11 @@
|
||||
# Staging
|
||||
Server=mssql-svc,1433;Database=Foursat;User Id=sa;Password=87zH26nbqT;TrustServerCertificate=true
|
||||
|
||||
# Production (env override)
|
||||
Server=45.149.79.127,31433;Database=KBS;User Id=sa;Password=YourStrong@Passw0rd;TrustServerCertificate=true
|
||||
# Production (appsettings.Production.json)
|
||||
Server=mssql-svc;Database=KBS;User Id=sa;Password=YourStrong@Passw0rd;TrustServerCertificate=True
|
||||
|
||||
# Production (env override — قدیمی، از بیرون cluster)
|
||||
# Server=45.149.79.127,31433;Database=KBS;User Id=sa;Password=YourStrong@Passw0rd;TrustServerCertificate=true
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user