diff --git a/Dockerfile b/Dockerfile index eac58b0..df4cd99 100644 --- a/Dockerfile +++ b/Dockerfile @@ -31,6 +31,8 @@ COPY --from=build /app/nginx.conf /etc/nginx/sites-available/default # Backend (Node builtin'leri + playwright) COPY --from=build /app/server ./server +# Backend, ortak doğrulama ve iş kurallarını src/services altından import eder. +COPY --from=build /app/src ./src # Kalıcı veri (Coolify'da /app/server/data volume olarak bağlı) RUN mkdir -p /app/server/data diff --git a/docs/quality/evidence/qa-container-runtime.json b/docs/quality/evidence/qa-container-runtime.json new file mode 100644 index 0000000..b177469 --- /dev/null +++ b/docs/quality/evidence/qa-container-runtime.json @@ -0,0 +1,14 @@ +{ + "date": "2026-09-06", + "image": "ihaleist-qa:local", + "checks": { + "nginxConfigTest": "successful", + "apiHealth": {"status": 200, "body": {"ok": true}}, + "staticSecurityHeaders": { + "x-content-type-options": "nosniff", + "referrer-policy": "no-referrer", + "permissions-policy": "camera=(), microphone=(), geolocation=()" + } + }, + "scope": "Local Docker image; no production deployment or external side effect" +} diff --git a/docs/quality/uygulama-durumu.md b/docs/quality/uygulama-durumu.md index 625f003..2ed1a9e 100644 --- a/docs/quality/uygulama-durumu.md +++ b/docs/quality/uygulama-durumu.md @@ -2076,3 +2076,7 @@ Doğrulama: 289 test geçti, üretim derlemesi başarılı. Production nginx yapılandırmasına SPA/statik yanıtlar için `X-Content-Type-Options`, `Referrer-Policy` ve `Permissions-Policy` başlıkları eklendi; API dışındaki ilk yükleme yanıtları da aynı temel politikaları taşıyor. Doğrulama: 289 test geçti, Vite üretim derlemesi başarılı. Host ortamında nginx binary’si bulunmadığı için `nginx -t` ayrıca container pipeline’ında çalıştırılmalı. + +### 2026-09-06 · Container çalışma zamanı düzeltmesi ve kanıtı + +Docker runtime image’ında backend’in kullandığı ortak `src/` klasörünün eksik kopyalandığı bulundu ve Dockerfile’a eklendi; önceki image Node `ERR_MODULE_NOT_FOUND` nedeniyle 502 üretiyordu. Yeniden build sonrası `nginx -t` başarılı, `/api/health` 200 ve statik güvenlik başlıkları doğrulandı. Kanıt [`qa-container-runtime.json`](evidence/qa-container-runtime.json) içinde.