@@ -5,6 +5,14 @@ FROM node:22-alpine3.19 AS base
55ARG BUILDPLATFORM
66ARG TARGETPLATFORM
77
8+ # Build-time args from docker-compose or GitHub Actions
9+ ARG NEXT_PUBLIC_BACKEND_SERVICE_PROTOCOL
10+ ARG NEXT_PUBLIC_BACKEND_SERVICE_HOST
11+ ARG NEXT_PUBLIC_BACKEND_SERVICE_PORT
12+ ARG NEXT_PUBLIC_BACKEND_API_VERSION
13+ ARG FRONTEND_SERVICE_INTERFACE
14+ ARG FRONTEND_SERVICE_PORT
15+
816# Optional diagnostics (doesn't affect final image)
917RUN echo "Build Platform: ${BUILDPLATFORM} -> Target Platform: ${TARGETPLATFORM}"
1018
@@ -23,29 +31,12 @@ WORKDIR /app
2331COPY --from=deps /app/node_modules ./node_modules
2432COPY . .
2533
26- # Build-time args from docker-compose or GitHub Actions
27- ARG NEXT_PUBLIC_BACKEND_SERVICE_PROTOCOL
28- ARG NEXT_PUBLIC_BACKEND_SERVICE_HOST
29- ARG NEXT_PUBLIC_BACKEND_SERVICE_PORT
30- ARG NEXT_PUBLIC_BACKEND_API_VERSION
31- ARG FRONTEND_SERVICE_INTERFACE
32- ARG FRONTEND_SERVICE_PORT
33-
3434# Pass them as ENV so Next.js static build can access
3535ENV NEXT_PUBLIC_BACKEND_SERVICE_PROTOCOL=$NEXT_PUBLIC_BACKEND_SERVICE_PROTOCOL
3636ENV NEXT_PUBLIC_BACKEND_SERVICE_HOST=$NEXT_PUBLIC_BACKEND_SERVICE_HOST
3737ENV NEXT_PUBLIC_BACKEND_SERVICE_PORT=$NEXT_PUBLIC_BACKEND_SERVICE_PORT
3838ENV NEXT_PUBLIC_BACKEND_API_VERSION=$NEXT_PUBLIC_BACKEND_API_VERSION
3939
40- # Optional: Print the values to verify they are set correctly
41- RUN echo "Building with the following environment variables:" && \
42- echo "NEXT_PUBLIC_BACKEND_SERVICE_PROTOCOL: ${NEXT_PUBLIC_BACKEND_SERVICE_PROTOCOL}" && \
43- echo "NEXT_PUBLIC_BACKEND_SERVICE_HOST: ${NEXT_PUBLIC_BACKEND_SERVICE_HOST}" && \
44- echo "NEXT_PUBLIC_BACKEND_SERVICE_PORT: ${NEXT_PUBLIC_BACKEND_SERVICE_PORT}" && \
45- echo "NEXT_PUBLIC_BACKEND_API_VERSION: ${NEXT_PUBLIC_BACKEND_API_VERSION}" && \
46- echo "FRONTEND_SERVICE_INTERFACE: ${FRONTEND_SERVICE_INTERFACE}" && \
47- echo "FRONTEND_SERVICE_PORT: ${FRONTEND_SERVICE_PORT}"
48-
4940# Build the Next.js application
5041# Note: Use `next build` to build the application for production
5142RUN npm run build
@@ -69,8 +60,10 @@ USER nextjs
6960# Expose the port
7061EXPOSE 3000
7162
72- ARG FRONTEND_SERVICE_INTERFACE
73- ARG FRONTEND_SERVICE_PORT
63+ ENV NEXT_PUBLIC_BACKEND_SERVICE_PROTOCOL=$NEXT_PUBLIC_BACKEND_SERVICE_PROTOCOL
64+ ENV NEXT_PUBLIC_BACKEND_SERVICE_HOST=$NEXT_PUBLIC_BACKEND_SERVICE_HOST
65+ ENV NEXT_PUBLIC_BACKEND_SERVICE_PORT=$NEXT_PUBLIC_BACKEND_SERVICE_PORT
66+ ENV NEXT_PUBLIC_BACKEND_API_VERSION=$NEXT_PUBLIC_BACKEND_API_VERSION
7467
7568# Runtime ENV for Compose
7669ENV HOSTNAME=$FRONTEND_SERVICE_INTERFACE
0 commit comments