mirror of
https://github.com/danny-avila/LibreChat.git
synced 2025-12-17 00:40:14 +01:00
🐳 feat: Add Jemalloc and UV to Docker Builds (#6836)
* feat: Add `uv` for extended MCP support in Dockerfiles * feat: Install jemalloc and set environment variable to use it
This commit is contained in:
parent
12f4dbb8c5
commit
1e6b1b9554
2 changed files with 17 additions and 2 deletions
12
Dockerfile
12
Dockerfile
|
|
@ -3,7 +3,15 @@
|
||||||
# Base node image
|
# Base node image
|
||||||
FROM node:20-alpine AS node
|
FROM node:20-alpine AS node
|
||||||
|
|
||||||
RUN apk --no-cache add curl
|
# Install jemalloc
|
||||||
|
RUN apk add --no-cache jemalloc
|
||||||
|
|
||||||
|
# Set environment variable to use jemalloc
|
||||||
|
ENV LD_PRELOAD=/usr/lib/libjemalloc.so.2
|
||||||
|
|
||||||
|
# Add `uv` for extended MCP support
|
||||||
|
COPY --from=ghcr.io/astral-sh/uv:0.6.13 /uv /uvx /bin/
|
||||||
|
RUN uv --version
|
||||||
|
|
||||||
RUN mkdir -p /app && chown node:node /app
|
RUN mkdir -p /app && chown node:node /app
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
@ -38,4 +46,4 @@ CMD ["npm", "run", "backend"]
|
||||||
# WORKDIR /usr/share/nginx/html
|
# WORKDIR /usr/share/nginx/html
|
||||||
# COPY --from=node /app/client/dist /usr/share/nginx/html
|
# COPY --from=node /app/client/dist /usr/share/nginx/html
|
||||||
# COPY client/nginx.conf /etc/nginx/conf.d/default.conf
|
# COPY client/nginx.conf /etc/nginx/conf.d/default.conf
|
||||||
# ENTRYPOINT ["nginx", "-g", "daemon off;"]
|
# ENTRYPOINT ["nginx", "-g", "daemon off;"]
|
||||||
|
|
@ -3,6 +3,10 @@
|
||||||
|
|
||||||
# Base for all builds
|
# Base for all builds
|
||||||
FROM node:20-alpine AS base-min
|
FROM node:20-alpine AS base-min
|
||||||
|
# Install jemalloc
|
||||||
|
RUN apk add --no-cache jemalloc
|
||||||
|
# Set environment variable to use jemalloc
|
||||||
|
ENV LD_PRELOAD=/usr/lib/libjemalloc.so.2
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
RUN apk --no-cache add curl
|
RUN apk --no-cache add curl
|
||||||
RUN npm config set fetch-retry-maxtimeout 600000 && \
|
RUN npm config set fetch-retry-maxtimeout 600000 && \
|
||||||
|
|
@ -50,6 +54,9 @@ RUN npm run build
|
||||||
|
|
||||||
# API setup (including client dist)
|
# API setup (including client dist)
|
||||||
FROM base-min AS api-build
|
FROM base-min AS api-build
|
||||||
|
# Add `uv` for extended MCP support
|
||||||
|
COPY --from=ghcr.io/astral-sh/uv:0.6.13 /uv /uvx /bin/
|
||||||
|
RUN uv --version
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
# Install only production deps
|
# Install only production deps
|
||||||
RUN npm ci --omit=dev
|
RUN npm ci --omit=dev
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue