update with nuxt4 for docker-web
All checks were successful
Deploy App / deploy (push) Successful in 4m5s
All checks were successful
Deploy App / deploy (push) Successful in 4m5s
This commit is contained in:
43
Dockerfile
43
Dockerfile
@@ -1,37 +1,30 @@
|
||||
ARG NODE_VERSION=node:16.14.2-alpine
|
||||
# 1 - INSTALL
|
||||
FROM $NODE_VERSION AS install
|
||||
# Stage de build
|
||||
FROM node:20-alpine AS build
|
||||
|
||||
RUN mkdir -p /app
|
||||
WORKDIR /app
|
||||
|
||||
COPY package.json .
|
||||
COPY package-lock.json .
|
||||
COPY config.sh .
|
||||
RUN npm ci
|
||||
# Installer pnpm
|
||||
RUN npm install -g pnpm
|
||||
|
||||
# 2 - CONFIGURE
|
||||
FROM install AS configure
|
||||
# Copier package.json et lockfile pour cache pnpm
|
||||
COPY package.json pnpm-lock.yaml* ./
|
||||
|
||||
RUN pnpm install --frozen-lockfile
|
||||
|
||||
# Copier tout le projet
|
||||
COPY . .
|
||||
COPY config.sh .
|
||||
|
||||
# avoid conflict with nuxt build:
|
||||
RUN sed -i "s|PORT=.*||g" config.sh
|
||||
# Build Nuxt
|
||||
RUN pnpm build
|
||||
|
||||
RUN npm run build
|
||||
|
||||
# 3 - PRODUCTION
|
||||
FROM $NODE_VERSION AS production
|
||||
# Stage production
|
||||
FROM node:20-alpine
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
COPY --from=install /app/node_modules /app/node_modules
|
||||
COPY --from=configure /app /app
|
||||
COPY --from=build /app/.output .output
|
||||
COPY --from=build /app/package.json ./
|
||||
COPY --from=build /app/node_modules ./node_modules
|
||||
|
||||
ENV NUXT_HOST=0.0.0.0
|
||||
ARG NUXT_APP_VERSION
|
||||
ENV NUXT_APP_VERSION=${NUXT_APP_VERSION}
|
||||
ENV NODE_ENV=production
|
||||
|
||||
CMD source config.sh && node .output/server/index.mjs
|
||||
EXPOSE 3000
|
||||
CMD ["node", ".output/server/index.mjs"]
|
||||
|
Reference in New Issue
Block a user