KoalaFlow commited on
Commit
51bd078
·
verified ·
1 Parent(s): fbb7764

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +12 -9
Dockerfile CHANGED
@@ -4,24 +4,24 @@ FROM node:18-slim
4
  # ---------- OS packages ----------------------------------------------------
5
  RUN apt-get update && apt-get install -y \
6
  git python3 python3-pip build-essential \
7
- libcairo2-dev libpango1.0-dev chromium \
8
  && apt-get clean && rm -rf /var/lib/apt/lists/*
9
 
10
  # ---------- Environment ----------------------------------------------------
11
  ENV PUPPETEER_SKIP_DOWNLOAD=true \
12
  PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium \
13
- CHROMA_MODE=local
14
 
15
  # ---------- Node & Python deps --------------------------------------------
16
  RUN npm install -g [email protected]
17
  RUN pip3 install numpy==1.26.4 --break-system-packages \
18
- && pip3 install chromadb==0.4.24 --break-system-packages
19
 
20
- # ---------- Prevent early-log crash ---------------------------------------
21
  RUN mkdir -p /usr/local/lib/node_modules/flowise/logs \
22
  && chmod -R 777 /usr/local/lib/node_modules/flowise
23
 
24
- # ---------- Persistent data dirs ------------------------------------------
25
  WORKDIR /data
26
  RUN mkdir -p /data/.flowise/logs /data/.flowise/storage /data/uploads /data/chroma \
27
  && chmod -R 777 /data
@@ -29,8 +29,11 @@ RUN mkdir -p /data/.flowise/logs /data/.flowise/storage /data/uploads /data/chro
29
  # ---------- Flowise configuration -----------------------------------------
30
  COPY flowise.json /data/flowise.json
31
 
32
- # ---------- Expose Flowise UI port ----------------------------------------
33
- EXPOSE 7860
34
 
35
- # ---------- Start Flowise (embedded Chroma auto-starts) --------------------
36
- CMD ["npx", "flowise", "start"]
 
 
 
 
4
  # ---------- OS packages ----------------------------------------------------
5
  RUN apt-get update && apt-get install -y \
6
  git python3 python3-pip build-essential \
7
+ libcairo2-dev libpango1.0-dev chromium curl \
8
  && apt-get clean && rm -rf /var/lib/apt/lists/*
9
 
10
  # ---------- Environment ----------------------------------------------------
11
  ENV PUPPETEER_SKIP_DOWNLOAD=true \
12
  PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium \
13
+ CHROMA_SERVER_CORS_ALLOW_ORIGINS='["*"]'
14
 
15
  # ---------- Node & Python deps --------------------------------------------
16
  RUN npm install -g [email protected]
17
  RUN pip3 install numpy==1.26.4 --break-system-packages \
18
+ && pip3 install chromadb==0.4.24 --break-system-packages # provides the `chroma` CLI
19
 
20
+ # ---------- Prevent Flowise early-log crash -------------------------------
21
  RUN mkdir -p /usr/local/lib/node_modules/flowise/logs \
22
  && chmod -R 777 /usr/local/lib/node_modules/flowise
23
 
24
+ # ---------- Persistent data directories -----------------------------------
25
  WORKDIR /data
26
  RUN mkdir -p /data/.flowise/logs /data/.flowise/storage /data/uploads /data/chroma \
27
  && chmod -R 777 /data
 
29
  # ---------- Flowise configuration -----------------------------------------
30
  COPY flowise.json /data/flowise.json
31
 
32
+ # ---------- Expose ports ---------------------------------------------------
33
+ EXPOSE 7860 8000
34
 
35
+ # ---------- Start: Chroma wait Flowise ---------------------------------
36
+ CMD sh -c 'chroma run --path /data/chroma --host 0.0.0.0 --port 8000 & \
37
+ while ! curl -s http://localhost:8000/api/v1/collections >/dev/null; do \
38
+ echo "Waiting for Chroma API…"; sleep 1; done && \
39
+ npx flowise start'