mirror of
https://github.com/danny-avila/LibreChat.git
synced 2025-12-22 19:30:15 +01:00
feat(docker-compose.yml): use pre-built image for api service instead of building from local file
35 lines
904 B
Text
35 lines
904 B
Text
# ./Dockerfile
|
|
|
|
FROM node:19-alpine
|
|
WORKDIR /app
|
|
|
|
# Copy package.json files for client and api
|
|
COPY /client/package*.json /app/client/
|
|
COPY /api/package*.json /app/api/
|
|
|
|
# Install dependencies for both client and api
|
|
RUN cd /app/client && npm ci
|
|
RUN cd /app/api && npm ci
|
|
|
|
# Copy the current directory contents into the container
|
|
COPY /client/ /app/client/
|
|
COPY /api/ /app/api/
|
|
|
|
# Set the memory limit for Node.js
|
|
ENV NODE_OPTIONS="--max-old-space-size=2048"
|
|
|
|
# Build webpack artifacts for the client
|
|
RUN cd /app/client && npm run build
|
|
|
|
# Create the necessary directory and copy the client side code to the api directory
|
|
RUN mkdir -p /app/api/client && cp -R /app/client/dist /app/api/client/dist
|
|
|
|
# Make port 3080 available to the world outside this container
|
|
EXPOSE 3080
|
|
|
|
# Expose the server to 0.0.0.0
|
|
ENV HOST=0.0.0.0
|
|
|
|
# Run the app when the container launches
|
|
WORKDIR /app/api
|
|
CMD ["npm", "start"]
|