32 lines
586 B
Docker
32 lines
586 B
Docker
FROM node:20.19.3-slim AS app
|
|||
|
|
|
||
|
|
RUN mkdir /app
|
||
|
|
WORKDIR /app
|
||
|
|
|
||
|
|
# Install pnpm, turbo and healthcheck tools
|
||
|
|
RUN corepack enable && corepack prepare pnpm@latest --activate
|
||
|
|
RUN npm install -g turbo@1.10.16
|
||
|
|
|
||
|
|
COPY package.json ./
|
||
|
|
COPY pnpm-lock.yaml ./
|
||
|
|
COPY pnpm-workspace.yaml ./
|
||
|
|
COPY turbo.json ./
|
||
|
|
COPY packages/tsconfig ./packages/tsconfig
|
||
|
|
COPY packages/shared ./packages/shared
|
||
|
|
|
||
|
|
# Copy the api package.json
|
||
|
|
COPY apps/api/package.json ./apps/api/package.json
|
||
|
|
|
||
|
|
RUN pnpm install
|
||
|
|
|
||
|
|
# Copy app source
|
||
|
|
COPY . .
|
||
|
|
|
||
|
|
RUN pnpm build --filter @cio/api
|
||
|
|
|
||
|
|
EXPOSE 3081
|
||
|
|
|
||
|
|
RUN ls -la
|
||
|
|
|
||
|
|
CMD ["pnpm", "api:start"]
|