Download Dockerfile.multi from Zhitomir/chat: direct link, hf CLI and curl.
- Browser
- Download file 1.27 kB
-
https://huggingface.co/spaces/Zhitomir/chat/resolve/main/Dockerfile.multi
- Command line
-
hf download hf://spaces/Zhitomir/chat/Dockerfile.multi
-
curl -L -o Dockerfile.multi https://huggingface.co/spaces/Zhitomir/chat/resolve/main/Dockerfile.multi
1.27 kB
| # v0.7.3 | |
| # Build API, Client and Data Provider | |
| FROM node:20-alpine AS base | |
| # Build data-provider | |
| FROM base AS data-provider-build | |
| WORKDIR /app/packages/data-provider | |
| COPY ./packages/data-provider ./ | |
| RUN npm install; npm cache clean --force | |
| RUN npm run build | |
| RUN npm prune --production | |
| # React client build | |
| FROM base AS client-build | |
| WORKDIR /app/client | |
| COPY ./client/package*.json ./ | |
| # Copy data-provider to client's node_modules | |
| COPY --from=data-provider-build /app/packages/data-provider/ /app/client/node_modules/librechat-data-provider/ | |
| RUN npm install; npm cache clean --force | |
| COPY ./client/ ./ | |
| ENV NODE_OPTIONS="--max-old-space-size=2048" | |
| RUN npm run build | |
| # Node API setup | |
| FROM base AS api-build | |
| WORKDIR /app/api | |
| COPY api/package*.json ./ | |
| COPY api/ ./ | |
| # Copy helper scripts | |
| COPY config/ ./ | |
| # Copy data-provider to API's node_modules | |
| COPY --from=data-provider-build /app/packages/data-provider/ /app/api/node_modules/librechat-data-provider/ | |
| RUN npm install --include prod; npm cache clean --force | |
| COPY --from=client-build /app/client/dist /app/client/dist | |
| EXPOSE 3080 | |
| ENV HOST=0.0.0.0 | |
| CMD ["node", "server/index.js"] | |
| # Nginx setup | |
| FROM nginx:1.21.1-alpine AS prod-stage | |
| COPY ./client/nginx.conf /etc/nginx/conf.d/default.conf | |
| CMD ["nginx", "-g", "daemon off;"] | |