mirror of
https://github.com/Sonny93/my-links.git
synced 2025-12-09 07:03:25 +00:00
fix: prod docker
This commit is contained in:
48
Dockerfile
48
Dockerfile
@@ -1,34 +1,44 @@
|
|||||||
# Source: https://docs.adonisjs.com/cookbooks/dockerizing-adonis#document
|
# Source : https://github.com/adonisjs-community/adonis-packages/blob/main/Dockerfile
|
||||||
|
|
||||||
FROM node:lts-alpine3.19
|
FROM node:20-alpine3.18 as base
|
||||||
|
|
||||||
# Set working directory
|
RUN apk --no-cache add curl
|
||||||
WORKDIR /usr/src/app
|
RUN corepack enable
|
||||||
|
|
||||||
# Install dependencies
|
# All deps stage
|
||||||
COPY package*.json ./
|
FROM base as deps
|
||||||
RUN npm ci --omit="dev" --ignore-scripts
|
WORKDIR /app
|
||||||
|
ADD package.json package-lock.json ./
|
||||||
# Copy app source code
|
|
||||||
COPY . .
|
|
||||||
|
|
||||||
# Build app
|
|
||||||
RUN npm install --ignore-scripts
|
RUN npm install --ignore-scripts
|
||||||
RUN npm run build --omit="dev"
|
|
||||||
RUN npx vite build
|
|
||||||
|
|
||||||
COPY ./.env ./build
|
# Production only deps stage
|
||||||
|
FROM base as production-deps
|
||||||
|
WORKDIR /app
|
||||||
|
ADD package.json package-lock.json ./
|
||||||
|
RUN npm install --omit="dev" --ignore-scripts
|
||||||
|
|
||||||
|
# Build stage
|
||||||
|
FROM base as build
|
||||||
|
WORKDIR /app
|
||||||
|
COPY --from=deps /app/node_modules /app/node_modules
|
||||||
|
ADD . .
|
||||||
|
RUN node ace build
|
||||||
|
|
||||||
|
# Production stage
|
||||||
|
FROM base
|
||||||
|
|
||||||
ENV PORT=$PORT
|
|
||||||
ENV HOST=0.0.0.0
|
|
||||||
ENV APP_KEY=DIhtF2IY1-MCAm_wlh3VYx7KLVOhpeOb
|
|
||||||
ENV NODE_ENV=production
|
ENV NODE_ENV=production
|
||||||
ENV LOG_LEVEL=debug
|
ENV LOG_LEVEL=debug
|
||||||
ENV CACHE_VIEWS=false
|
ENV CACHE_VIEWS=false
|
||||||
ENV SESSION_DRIVER=cookie
|
ENV SESSION_DRIVER=cookie
|
||||||
|
ENV PORT=$PORT
|
||||||
|
|
||||||
|
WORKDIR /app
|
||||||
|
COPY --from=production-deps /app/node_modules /app/node_modules
|
||||||
|
COPY --from=build /app/build /app
|
||||||
|
|
||||||
# Expose port
|
# Expose port
|
||||||
EXPOSE $PORT
|
EXPOSE $PORT
|
||||||
|
|
||||||
# Start app
|
# Start app
|
||||||
CMD node build/bin/console.js migration:run && node build/bin/server.js
|
CMD node bin/console.js migration:run --force && node bin/server.js
|
||||||
|
|||||||
Reference in New Issue
Block a user