34 lines
711 B
Text
34 lines
711 B
Text
|
|
FROM node:20-slim
|
||
|
|
|
||
|
|
WORKDIR /app
|
||
|
|
|
||
|
|
# Skip browser downloads
|
||
|
|
ENV PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1
|
||
|
|
ENV CYPRESS_INSTALL_BINARY=0
|
||
|
|
|
||
|
|
# Install dependencies
|
||
|
|
RUN apt-get update && apt-get install -y python3 make g++ && rm -rf /var/lib/apt/lists/*
|
||
|
|
|
||
|
|
# Copy package files
|
||
|
|
COPY package*.json ./
|
||
|
|
RUN npm ci --legacy-peer-deps
|
||
|
|
|
||
|
|
# Copy all source files
|
||
|
|
COPY . .
|
||
|
|
|
||
|
|
# Create env file
|
||
|
|
RUN echo "VITE_API_URL=http://localhost:9100" > .env && \
|
||
|
|
echo "PUBLIC_API_URL=http://localhost:9100/api" >> .env && \
|
||
|
|
echo "VITE_RUST_API_URL=http://localhost:9100/api" >> .env
|
||
|
|
|
||
|
|
# Build
|
||
|
|
ENV NODE_OPTIONS="--max-old-space-size=4096"
|
||
|
|
RUN npm run build
|
||
|
|
|
||
|
|
ENV PORT=9201
|
||
|
|
ENV HOST=0.0.0.0
|
||
|
|
|
||
|
|
EXPOSE 9201
|
||
|
|
|
||
|
|
CMD ["node", ".output/server/index.mjs"]
|