KoalaFlow commited on
Commit
e4e5cbe
·
verified ·
1 Parent(s): 68b2a3f

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +9 -10
Dockerfile CHANGED
@@ -1,6 +1,6 @@
1
  FROM node:18-slim
2
 
3
- # Install required system packages
4
  RUN apt-get update && apt-get install -y \
5
  git \
6
  python3 \
@@ -12,28 +12,27 @@ RUN apt-get update && apt-get install -y \
12
  curl \
13
  && apt-get clean && rm -rf /var/lib/apt/lists/*
14
 
15
- # Puppeteer config
16
  ENV PUPPETEER_SKIP_DOWNLOAD=true
17
  ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium
18
 
19
- # Install Flowise and ChromaDB
20
  RUN npm install -g flowise@3.0.0
21
- RUN pip3 install chromadb==0.4.24 --break-system-packages
22
 
23
- # Prevent Flowise crash on early logging attempt
24
  RUN mkdir -p /usr/local/lib/node_modules/flowise/logs && chmod -R 777 /usr/local/lib/node_modules/flowise
25
 
26
- # Setup persistent storage paths
27
  WORKDIR /data
28
  RUN mkdir -p /data/.flowise/logs /data/.flowise/storage /data/uploads /data/chroma && chmod -R 777 /data
29
 
30
- # Copy Flowise config
31
  COPY flowise.json /data/flowise.json
32
 
33
- # Expose ports (optional but good practice)
34
  EXPOSE 7860 8000
35
 
36
- # Start ChromaDB, wait for it to be ready, then launch Flowise
37
- CMD sh -c "python3 -m chromadb --path /data/chroma & \
38
  while ! curl -s http://localhost:8000 > /dev/null; do echo 'Waiting for Chroma...'; sleep 1; done && \
39
  npx flowise start"
 
1
  FROM node:18-slim
2
 
3
+ # Install OS deps
4
  RUN apt-get update && apt-get install -y \
5
  git \
6
  python3 \
 
12
  curl \
13
  && apt-get clean && rm -rf /var/lib/apt/lists/*
14
 
 
15
  ENV PUPPETEER_SKIP_DOWNLOAD=true
16
  ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium
17
 
18
+ # Install Flowise and Chroma with gunicorn
19
  RUN npm install -g flowise@3.0.0
20
+ RUN pip3 install chromadb==0.4.24 gunicorn --break-system-packages
21
 
22
+ # Fix log write crash
23
  RUN mkdir -p /usr/local/lib/node_modules/flowise/logs && chmod -R 777 /usr/local/lib/node_modules/flowise
24
 
25
+ # Persistent data dirs
26
  WORKDIR /data
27
  RUN mkdir -p /data/.flowise/logs /data/.flowise/storage /data/uploads /data/chroma && chmod -R 777 /data
28
 
29
+ # Add config
30
  COPY flowise.json /data/flowise.json
31
 
32
+ # Expose ports
33
  EXPOSE 7860 8000
34
 
35
+ # Run Chroma properly, wait, then start Flowise
36
+ CMD sh -c "gunicorn chromadb.app:app --bind 0.0.0.0:8000 & \
37
  while ! curl -s http://localhost:8000 > /dev/null; do echo 'Waiting for Chroma...'; sleep 1; done && \
38
  npx flowise start"