Spaces:
Sleeping
Sleeping
FROM node:18-alpine | |
USER root | |
# Arguments that can be passed at build time | |
ARG FLOWISE_PATH=/usr/local/lib/node_modules/flowise | |
ARG PORT=7860 | |
ARG PASSPHRASE= | |
ARG DATABASE_PATH=/root/.flowise | |
ARG APIKEY_PATH=/root/.flowise | |
ARG SECRETKEY_PATH=/root/.flowise | |
ARG LOG_PATH=/root/.flowise/logs | |
# Install dependencies | |
RUN apk add --no-cache git python3 py3-pip make g++ build-base cairo-dev pango-dev chromium | |
ENV PUPPETEER_SKIP_DOWNLOAD=true | |
ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium-browser | |
# Set environment variables using the arguments | |
ENV PORT=$PORT | |
ENV PASSPHRASE=$PASSPHRASE | |
ENV DATABASE_PATH=$DATABASE_PATH | |
ENV APIKEY_PATH=$APIKEY_PATH | |
ENV SECRETKEY_PATH=$SECRETKEY_PATH | |
ENV LOG_PATH=$LOG_PATH | |
# Install Flowise globally | |
RUN npm install -g flowise | |
# Configure Flowise directories using the ARG | |
RUN mkdir -p $FLOWISE_PATH && chmod -R 777 $FLOWISE_PATH | |
RUN mkdir -p $LOG_PATH && chmod -R 777 $LOG_PATH | |
RUN mkdir -p $FLOWISE_PATH/uploads && chmod -R 777 $FLOWISE_PATH/uploads | |
WORKDIR /data | |
CMD ["npx", "flowise", "start"] |