Attempt 2
This commit is contained in:
25
Dockerfile
25
Dockerfile
@ -1,6 +1,6 @@
|
|||||||
# base
|
# base
|
||||||
# ----
|
# ----
|
||||||
FROM node:20-bookworm-slim as base
|
FROM node:20-bookworm-slim AS base
|
||||||
|
|
||||||
RUN corepack enable
|
RUN corepack enable
|
||||||
|
|
||||||
@ -32,7 +32,7 @@ COPY --chown=node:node graphql.config.js .
|
|||||||
|
|
||||||
# api build
|
# api build
|
||||||
# ---------
|
# ---------
|
||||||
FROM base as api_build
|
FROM base AS api_build
|
||||||
|
|
||||||
# If your api side build relies on build-time environment variables,
|
# If your api side build relies on build-time environment variables,
|
||||||
# specify them here as ARGs. (But don't put secrets in your Dockerfile!)
|
# specify them here as ARGs. (But don't put secrets in your Dockerfile!)
|
||||||
@ -58,7 +58,7 @@ RUN yarn rw build api
|
|||||||
|
|
||||||
# web prerender build
|
# web prerender build
|
||||||
# -------------------
|
# -------------------
|
||||||
FROM api_build as web_build_with_prerender
|
FROM api_build AS web_build_with_prerender
|
||||||
|
|
||||||
ARG FIRST_NAME
|
ARG FIRST_NAME
|
||||||
ARG LAST_NAME
|
ARG LAST_NAME
|
||||||
@ -70,12 +70,14 @@ ARG API_ADDRESS_PROD
|
|||||||
ARG API_ADDRESS_DEV
|
ARG API_ADDRESS_DEV
|
||||||
ARG APP_VERSION
|
ARG APP_VERSION
|
||||||
|
|
||||||
|
ENV APP_VERSION=$APP_VERSION
|
||||||
|
|
||||||
COPY --chown=node:node web web
|
COPY --chown=node:node web web
|
||||||
RUN yarn rw build web
|
RUN yarn rw build web
|
||||||
|
|
||||||
# web build
|
# web build
|
||||||
# ---------
|
# ---------
|
||||||
FROM base as web_build
|
FROM base AS web_build
|
||||||
|
|
||||||
ARG FIRST_NAME
|
ARG FIRST_NAME
|
||||||
ARG LAST_NAME
|
ARG LAST_NAME
|
||||||
@ -87,12 +89,14 @@ ARG API_ADDRESS_PROD
|
|||||||
ARG API_ADDRESS_DEV
|
ARG API_ADDRESS_DEV
|
||||||
ARG APP_VERSION
|
ARG APP_VERSION
|
||||||
|
|
||||||
|
ENV APP_VERSION=$APP_VERSION
|
||||||
|
|
||||||
COPY --chown=node:node web web
|
COPY --chown=node:node web web
|
||||||
RUN yarn rw build web --no-prerender
|
RUN yarn rw build web --no-prerender
|
||||||
|
|
||||||
# api serve
|
# api serve
|
||||||
# ---------
|
# ---------
|
||||||
FROM node:20-bookworm-slim as api_serve
|
FROM node:20-bookworm-slim AS api_serve
|
||||||
|
|
||||||
RUN corepack enable
|
RUN corepack enable
|
||||||
|
|
||||||
@ -122,7 +126,10 @@ COPY --chown=node:node --from=api_build /home/node/app/api/dist /home/node/app/a
|
|||||||
COPY --chown=node:node --from=api_build /home/node/app/api/db /home/node/app/api/db
|
COPY --chown=node:node --from=api_build /home/node/app/api/db /home/node/app/api/db
|
||||||
COPY --chown=node:node --from=api_build /home/node/app/node_modules/.prisma /home/node/app/node_modules/.prisma
|
COPY --chown=node:node --from=api_build /home/node/app/node_modules/.prisma /home/node/app/node_modules/.prisma
|
||||||
|
|
||||||
|
ARG APP_VERSION
|
||||||
|
|
||||||
ENV NODE_ENV=production
|
ENV NODE_ENV=production
|
||||||
|
ENV APP_VERSION=$APP_VERSION
|
||||||
|
|
||||||
# default api serve command
|
# default api serve command
|
||||||
# ---------
|
# ---------
|
||||||
@ -135,7 +142,7 @@ CMD [ "./api/dist/server.js" ]
|
|||||||
|
|
||||||
# web serve
|
# web serve
|
||||||
# ---------
|
# ---------
|
||||||
FROM node:20-bookworm-slim as web_serve
|
FROM node:20-bookworm-slim AS web_serve
|
||||||
|
|
||||||
RUN corepack enable
|
RUN corepack enable
|
||||||
|
|
||||||
@ -160,17 +167,17 @@ COPY --chown=node:node graphql.config.js .
|
|||||||
COPY --chown=node:node --from=web_build /home/node/app/web/dist /home/node/app/web/dist
|
COPY --chown=node:node --from=web_build /home/node/app/web/dist /home/node/app/web/dist
|
||||||
|
|
||||||
ARG APP_VERSION
|
ARG APP_VERSION
|
||||||
|
ENV APP_VERSION=$APP_VERSION
|
||||||
|
|
||||||
ENV NODE_ENV=production \
|
ENV NODE_ENV=production \
|
||||||
API_PROXY_TARGET=http://api:8911 \
|
API_PROXY_TARGET=http://api:8911
|
||||||
APP_VERSION=${APP_VERSION}
|
|
||||||
|
|
||||||
# We use the shell form here for variable expansion.
|
# We use the shell form here for variable expansion.
|
||||||
CMD "node_modules/.bin/rw-web-server" "--api-proxy-target" "$API_PROXY_TARGET"
|
CMD "node_modules/.bin/rw-web-server" "--api-proxy-target" "$API_PROXY_TARGET"
|
||||||
|
|
||||||
# console
|
# console
|
||||||
# -------
|
# -------
|
||||||
FROM base as console
|
FROM base AS console
|
||||||
|
|
||||||
# To add more packages:
|
# To add more packages:
|
||||||
#
|
#
|
||||||
|
Reference in New Issue
Block a user