Files
Michess/Dockerfile

30 lines
723 B
Docker

FROM node:lts-alpine3.20
# Install git only (stockfish via npm package)
RUN apk update && apk add --no-cache git
ENV PNPM_HOME=/usr/local/bin
WORKDIR /opt/michess/
COPY . .
RUN corepack enable && \
corepack prepare pnpm@latest --activate && \
pnpm config set store-dir /opt/michess/.pnpm-store && \
pnpm install --no-frozen-lockfile
# Build-time env vars for Next.js (baked into the frontend bundle)
ARG NEXT_PUBLIC_API_URL=http://localhost:3001
ARG NEXT_PUBLIC_APP_URL=http://localhost:3000
ENV NEXT_PUBLIC_API_URL=$NEXT_PUBLIC_API_URL
ENV NEXT_PUBLIC_APP_URL=$NEXT_PUBLIC_APP_URL
# Build server and client
RUN pnpm build:server && pnpm build:client
EXPOSE 3000 3001
ENTRYPOINT ["pnpm"]
CMD ["start"]