|
@@ -1,29 +1,21 @@
|
|
|
-# Étape 1 : Builder Angular SSR
|
|
|
|
|
-FROM node:14-alpine AS builder
|
|
|
|
|
-
|
|
|
|
|
-WORKDIR /app
|
|
|
|
|
-
|
|
|
|
|
-# Installer dépendances Angular
|
|
|
|
|
-COPY angular-client/package*.json ./angular-client/
|
|
|
|
|
-RUN cd angular-client && npm install
|
|
|
|
|
-
|
|
|
|
|
-# Copier le code Angular
|
|
|
|
|
-COPY angular-client ./angular-client
|
|
|
|
|
-RUN cd angular-client && npm run build:ssr
|
|
|
|
|
-
|
|
|
|
|
# Étape 2 : Runner Express avec SSR + API
|
|
# Étape 2 : Runner Express avec SSR + API
|
|
|
FROM node:14-alpine
|
|
FROM node:14-alpine
|
|
|
-
|
|
|
|
|
WORKDIR /app
|
|
WORKDIR /app
|
|
|
|
|
|
|
|
|
|
+# Install build dependencies
|
|
|
|
|
+RUN apk add --no-cache make gcc g++ python3
|
|
|
|
|
+
|
|
|
# Copier le backend Express complet
|
|
# Copier le backend Express complet
|
|
|
COPY express-server .
|
|
COPY express-server .
|
|
|
|
|
|
|
|
# Copier la build Angular SSR compilée
|
|
# Copier la build Angular SSR compilée
|
|
|
COPY --from=builder /app/angular-client/dist ./dist
|
|
COPY --from=builder /app/angular-client/dist ./dist
|
|
|
|
|
|
|
|
-# Installer les dépendances Express uniquement (sans dev)
|
|
|
|
|
|
|
+# Installer les dépendances Express
|
|
|
RUN npm install --omit=dev
|
|
RUN npm install --omit=dev
|
|
|
|
|
|
|
|
|
|
+# Cleanup build dependencies (optional)
|
|
|
|
|
+RUN apk del make gcc g++ python3
|
|
|
|
|
+
|
|
|
EXPOSE 4000
|
|
EXPOSE 4000
|
|
|
CMD ["node", "index.js"]
|
|
CMD ["node", "index.js"]
|