File size: 2,242 Bytes
fa12237 223cfa0 754fd3f 11713e2 754fd3f 11713e2 754fd3f 2c268c6 754fd3f ae4b824 754fd3f b36da17 223cfa0 11713e2 c7dd3ba a663e2d c7dd3ba f566e2a e41cf62 c6b5a23 182e05a c6b5a23 8cb33c8 754fd3f 11713e2 0ac823c 754fd3f 1cda6c2 3180925 b36da17 754fd3f 0ac823c 11713e2 1d748c5 4bd7e6b 0ac823c 1d748c5 f73fe7b 11713e2 223cfa0 aabe5da 4d7c889 17c0c8b 0ac823c f8dcf7b bc03f82 d3deb2e c7dd3ba 24f2192 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 | FROM node:24-alpine
# Set user to root for installation
USER root
# Arguments that can be passed at build time
ARG N8N_PATH=/usr/local/lib/node_modules/n8n
ARG BASE_PATH=/root/.n8n
ARG DATABASE_PATH=$BASE_PATH/database
ARG CONFIG_PATH=$BASE_PATH/config
ARG WORKFLOWS_PATH=$BASE_PATH/workflows
ARG LOGS_PATH=$BASE_PATH/logs
ARG N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=$N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS
ARG N8N_RUNNERS_ENABLED=true
ARG allowVulnerableTags=true
ARG N8N_HOST=$N8N_HOST
ARG N8N_PORT=$N8N_PORT
ARG N8N_PROTOCOL=https
ARG N8N_EDITOR_BASE_URL=$N8N_EDITOR_BASE_URL
ARG WEBHOOK_URL=$WEBHOOK_URL
ARG GENERIC_TIMEZONE=$GENERIC_TIMEZONE
ARG TZ=$TZ
ARG N8N_ENCRYPTION_KEY=$N8N_ENCRYPTION_KEY
ARG DB_TYPE=$DB_TYPE
ARG DB_POSTGRESDB_SCHEMA=$DB_POSTGRESDB_SCHEMA
ARG DB_POSTGRESDB_HOST=$DB_POSTGRESDB_HOST
ARG DB_POSTGRESDB_DATABASE=$DB_POSTGRESDB_DATABASE
ARG DB_POSTGRESDB_PORT=$DB_POSTGRESDB_PORT
ARG DB_POSTGRESDB_USER=$DB_POSTGRESDB_USER
ARG DB_POSTGRESDB_PASSWORD=$DB_POSTGRESDB_PASSWORD
ARG NODE_FUNCTION_ALLOW_BUILTIN=*
ARG NODE_FUNCTION_ALLOW_EXTERNAL=*
# Install system dependencies
RUN apk add --no-cache \
git \
python3 \
py3-pip \
make \
cmake \
g++ \
build-base \
cairo-dev \
pango-dev \
chromium \
postgresql-client \
ffmpeg \
yt-dlp \
# Dependencias adicionales para Whisper
ffmpeg-dev \
libsndfile-dev \
# Python development
python3-dev \
py3-virtualenv \
wget
# Crear entorno virtual
RUN virtualenv /venv
# Usar el entorno virtual
ENV PATH="/venv/bin:$PATH"
# Set environment variables
ENV PUPPETEER_SKIP_DOWNLOAD=true
ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium-browser
# Install n8n globally
RUN npm install -g n8n@1.122.4
# Create necessary directories (<<<<< this is the line that was modified)
RUN mkdir -p $BASE_PATH \
&& chmod -R 777 $BASE_PATH
# Set working directory
WORKDIR /data
# Clonar whisper.cpp
RUN git clone https://github.com/ggerganov/whisper.cpp && \
cd whisper.cpp && \
make
# Los modelos se deben descargar/diferenciar manualmente
RUN chmod +x /data/whisper.cpp/models/download-ggml-model.sh && \
/data/whisper.cpp/models/download-ggml-model.sh base
# Start n8n
CMD ["n8n", "start"]
|