fix: retain security headers on frontend assets
This commit is contained in:
+7
-4
@@ -1,5 +1,3 @@
|
||||
ARG SOURCE_COMMIT=unknown
|
||||
|
||||
# Stage 1: Vite SPA build
|
||||
FROM node:22-slim AS build
|
||||
WORKDIR /app
|
||||
@@ -13,8 +11,6 @@ RUN npm run build
|
||||
# indirme için gerekli. Sunucu darlığında DT_ENABLED=0 ile kapatılabilir;
|
||||
# uygulama ve diğer tüm veri kaynakları Chromium olmadan da çalışır.
|
||||
FROM node:22-slim
|
||||
ARG SOURCE_COMMIT
|
||||
ENV APP_RELEASE=${SOURCE_COMMIT}
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y --no-install-recommends nginx ca-certificates curl \
|
||||
@@ -32,6 +28,11 @@ RUN npm init -y >/dev/null \
|
||||
&& npx playwright install --with-deps chromium \
|
||||
&& npm cache clean --force
|
||||
|
||||
# Commit değişince ağır Chromium katmanını yeniden kurmadan yalnız yayın
|
||||
# katmanlarını yenile. Coolify bu argümanı build içine açıkça geçirir.
|
||||
ARG SOURCE_COMMIT=unknown
|
||||
ENV APP_RELEASE=${SOURCE_COMMIT}
|
||||
|
||||
# Frontend
|
||||
COPY --from=build /app/dist /usr/share/nginx/html
|
||||
COPY --from=build /app/nginx.conf /etc/nginx/sites-available/default
|
||||
@@ -40,6 +41,8 @@ COPY --from=build /app/nginx.conf /etc/nginx/sites-available/default
|
||||
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
|
||||
# .js importlarının ES module olarak doğrudan yüklenmesi için package type bilgisi.
|
||||
COPY --from=build /app/package.json ./package.json
|
||||
|
||||
# Kalıcı veri (Coolify'da /app/server/data volume olarak bağlı)
|
||||
RUN mkdir -p /app/server/data
|
||||
|
||||
Reference in New Issue
Block a user