feat(build): Migrate from static Nginx to Node.js server

This commit transitions the application from being served as a static site via Nginx to a full Node.js application, likely Next.js.

The Dockerfile has been completely rewritten to use a multi-stage build process:
- A `builder` stage installs dependencies and builds the application.
- A lean `runner` stage copies only the necessary production artifacts and dependencies to run the application server.

The `.drone.yml` configuration has been updated to align with this new build process and to trigger builds on the `develop` branch in addition to `main`.
This commit is contained in:
AmirReza Jamali
2025-10-14 16:41:47 +03:30
parent cd471695b7
commit a6e4e2cf6d
2 changed files with 36 additions and 10 deletions
+29 -4
View File
@@ -1,7 +1,32 @@
FROM nginx:alpine
FROM node:22.19.0 AS builder
COPY . /usr/share/nginx/html/
WORKDIR /app
# RUN apk add --no-cache libc6-compat
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
COPY package*.json ./
RUN npm i
COPY . .
RUN docker build .
#---
FROM node:22.19.0 AS runner
WORKDIR /app
COPY package*.json ./
RUN npm ci --omit=dev
COPY --from=builder /app/.next ./.next
COPY --from=builder /app/public ./public
COPY --from=builder /app/node_modules ./node_modules
COPY --from=builder /app/package*.json ./
EXPOSE 3000
CMD ["npm", "start"]