Flowise / Dockerfile
EnzGamers's picture
Upgrade to 3.0.10
ea0b6b2 verified
# Utiliser une image Node.js LTS plus récente pour la compatibilité des dépendances
FROM node:20-alpine
# Définir l'utilisateur root pour les permissions
USER root
# Arguments pouvant être passés lors de la construction
ARG FLOWISE_PATH=/usr/local/lib/node_modules/flowise
ARG BASE_PATH=/root/.flowise
ARG DATABASE_PATH=${BASE_PATH}
ARG SECRETKEY_PATH=${BASE_PATH}
ARG LOG_PATH=${BASE_PATH}/logs
ARG BLOB_STORAGE_PATH=${BASE_PATH}/storage
# Installer les dépendances système, y compris les certificats CA pour les connexions SSL
RUN apk add --no-cache ca-certificates git python3 py3-pip make g++ build-base cairo-dev pango-dev chromium
# Mettre à jour les certificats CA
RUN update-ca-certificates
# Variables d'environnement pour Puppeteer
ENV PUPPETEER_SKIP_DOWNLOAD=true
ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium-browser
# Installer Flowise globalement
RUN npm install -g flowise@3.0.10
# Configurer les répertoires de Flowise en utilisant les ARG
RUN mkdir -p ${LOG_PATH} ${FLOWISE_PATH}/uploads && \
chmod -R 777 ${LOG_PATH} ${FLOWISE_PATH}
# --- Variables d'environnement pour la base de données Supabase ---
ENV DATABASE_TYPE=postgres
# Remplacer cette ligne
ENV NODE_TLS_REJECT_UNAUTHORIZED=$NODE_TLS_REJECT_UNAUTHORIZED
# Par ces lignes
ENV PGSSLMODE=require
ENV NODE_EXTRA_CA_CERTS=/etc/ssl/certs/ca-certificates.crt
# Variables de connexion (à définir dans les Secrets Hugging Face Space)
ENV DATABASE_HOST=""
ENV DATABASE_PORT="5432"
ENV DATABASE_USER=""
ENV DATABASE_PASSWORD=""
ENV DATABASE_NAME="postgres"
# CRITIQUE: Définir le port pour Hugging Face Spaces
ENV PORT=7860
ENV FLOWISE_USERNAME=$FLOWISE_USERNAME
ENV FLOWISE_PASSWORD=$FLOWISE_PASSWORD
# --- Secret Key Flowise ----
ENV FLOWISE_SECRETKEY_OVERWRITE=$FLOWISE_SECRETKEY_OVERWRITE
# Définir le répertoire de travail
WORKDIR /data
# Exposer le port pour Hugging Face Spaces
EXPOSE 7860
# Commande pour démarrer Flowise sur le port 7860
CMD ["npx", "flowise", "start", "--PORT=7860"]