Spaces:
Running
Running
Update Dockerfile
Browse files- Dockerfile +40 -56
Dockerfile
CHANGED
@@ -1,61 +1,45 @@
|
|
1 |
-
#
|
2 |
-
FROM ghcr.io/danny-avila/librechat-dev:
|
3 |
-
|
4 |
-
# Install dependencies
|
5 |
-
USER root
|
6 |
-
RUN apk update && apk add --no-cache \
|
7 |
-
caddy \
|
8 |
-
python3 \
|
9 |
-
py3-pip \
|
10 |
-
py3-dotenv \
|
11 |
-
git && \
|
12 |
-
pip install flask pymongo[srv] --break-system-packages
|
13 |
|
14 |
-
|
15 |
-
COPY config.yaml /app/librechat.yaml
|
16 |
-
COPY Caddyfile /app/caddy/Caddyfile
|
17 |
-
COPY start-temp.sh /app/start.sh
|
18 |
-
RUN chmod +x /app/start.sh
|
19 |
-
|
20 |
-
# Create directory structure
|
21 |
-
RUN mkdir -p \
|
22 |
-
/app/sudo/{templates,static} \
|
23 |
-
/app/uploads/temp \
|
24 |
-
/app/client/public/images/temp \
|
25 |
-
/app/api/logs \
|
26 |
-
/app/data \
|
27 |
-
/app/caddy && \
|
28 |
-
chmod -R 777 \
|
29 |
-
/app/uploads/temp \
|
30 |
-
/app/client/public/images \
|
31 |
-
/app/api/logs \
|
32 |
-
/app/data
|
33 |
|
34 |
-
# Copy application files
|
35 |
-
COPY index-temp.html /app/sudo/templates/index.html
|
36 |
-
COPY app-temp.py /app/sudo/app.py
|
37 |
|
38 |
-
# Set environment variables
|
39 |
-
ENV HOST=0.0.0.0
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
49 |
|
50 |
-
# Install
|
51 |
RUN cd /app/api && npm install
|
52 |
-
|
53 |
-
|
54 |
-
EXPOSE 7860
|
55 |
-
|
56 |
-
# Health check (recommended for HF Spaces)
|
57 |
-
HEALTHCHECK --interval=30s --timeout=30s --start-period=5s --retries=3 \
|
58 |
-
CMD curl -f http://localhost:7860 || exit 1
|
59 |
-
|
60 |
-
# Start command
|
61 |
-
CMD ["/app/start.sh"]
|
|
|
1 |
+
# Pull the base image
|
2 |
+
#FROM ghcr.io/danny-avila/librechat-dev:650e9b4f6c7e1ea063638ce10f95fbd53631f4bd
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
|
4 |
+
FROM ghcr.io/danny-avila/librechat-dev:latest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
|
|
|
|
|
|
|
6 |
|
7 |
+
# Set environment variables
|
8 |
+
ENV HOST=0.0.0.0
|
9 |
+
ENV PORT=7860
|
10 |
+
ENV SESSION_EXPIRY=900000
|
11 |
+
ENV REFRESH_TOKEN_EXPIRY=604800000
|
12 |
+
ENV SEARCH=true
|
13 |
+
ENV MEILI_NO_ANALYTICS=true
|
14 |
+
ENV MEILI_HOST=https://martynka-meilisearch.hf.space
|
15 |
+
ENV CONFIG_PATH=/app/librechat.yaml
|
16 |
+
ENV CUSTOM_FOOTER=EasierIT
|
17 |
+
# Create necessary directories
|
18 |
+
RUN mkdir -p /app/uploads/temp
|
19 |
+
RUN mkdir -p /app/client/public/images/temp
|
20 |
+
RUN mkdir -p /app/api/logs/
|
21 |
+
RUN mkdir -p /app/data
|
22 |
+
|
23 |
+
# Give write permission to the directory
|
24 |
+
RUN chmod -R 777 /app/uploads/temp
|
25 |
+
RUN chmod -R 777 /app/client/public/images
|
26 |
+
RUN chmod -R 777 /app/api/logs/
|
27 |
+
RUN chmod -R 777 /app/data
|
28 |
+
|
29 |
+
user root
|
30 |
+
RUN apk update
|
31 |
+
RUN apk add git
|
32 |
+
copy logo-pp.svg /app/client/public/assets/logo.svg
|
33 |
+
copy logo-pp.svg /app/client/dist/assets/logo.svg
|
34 |
+
copy logo-pp.svg /app/node_modules/date-fns/docs/logo.svg
|
35 |
+
copy logo-pp.svg /app/node_modules/ldapjs/docs/branding/public/media/img/logo.svg
|
36 |
+
copy logo-pp.svg /app/node_modules/playwright-core/lib/vite/recorder/playwright-logo.svg
|
37 |
+
copy logo-pp.svg /app/node_modules/playwright-core/lib/vite/traceViewer/playwright-logo.svg
|
38 |
+
copy logo-pp.svg /app/node_modules/psl/browserstack-logo.svg
|
39 |
+
# Copy Custom Endpoints Config
|
40 |
+
copy config.yaml /app/librechat.yaml
|
41 |
|
42 |
+
# Install dependencies
|
43 |
RUN cd /app/api && npm install
|
44 |
+
# Command to run on container start
|
45 |
+
CMD ["npm", "run", "backend"]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|