librechat / Dockerfile
lancelotly's picture
Update Dockerfile
0831b62 verified
FROM ghcr.io/danny-avila/librechat-dev:latest
# Meilisearch configuration
FROM getmeili/meilisearch:latest as meilisearch
# Set environment variables for Meilisearch
ENV MEILI_HTTP_ADDR=0.0.0.0:7700
ENV MEILI_NO_ANALYTICS=true
# Expose the default MeiliSearch HTTP port
EXPOSE 7700
# Create and set the MeiliSearch data directory
RUN mkdir -p /meili_data
RUN chmod -R 777 /meili_data
VOLUME ["/meili_data"]
# Librechat configuration
FROM ghcr.io/danny-avila/librechat-dev:latest
# Expose Librechat port
EXPOSE 3080
# Set environment variables
ENV HOST=0.0.0.0
ENV PORT=3080
ENV SESSION_EXPIRY=900000
ENV REFRESH_TOKEN_EXPIRY=604800000
ENV SEARCH=true
ENV MEILI_HOST=0.0.0.0:7700
# Create necessary directories
RUN mkdir -p /app/uploads/temp
RUN mkdir -p /app/client/public/images/temp
RUN mkdir -p /app/api/logs/
RUN mkdir -p /app/data
# Give write permission to the directories
RUN chmod -R 777 /app/uploads/temp
RUN chmod -R 777 /app/client/public/images
RUN chmod -R 777 /app/api/logs/
RUN chmod -R 777 /app/data
# Copy Custom Endpoints Config
RUN curl -o /app/librechat.yaml https://raw.githubusercontent.com/fuegovic/lc-config-yaml/main/librechat-test.yaml
# COPY librechat.yaml /app/librechat.yaml # Uncomment this and comment out the previous line to use the local librechat.yaml
# Install dependencies
RUN cd /app/api && npm install
# Copy Meilisearch container
COPY --from=meilisearch /meili_data /app/data
# Command to run on container start
CMD ["npm", "run", "backend"]