Spaces:
Running
Running
| # Changed from 20 to 22 | |
| FROM node:22-alpine | |
| USER root | |
| # Install system dependencies including Python | |
| RUN apk add --no-cache \ | |
| git python3 py3-pip py3-virtualenv make g++ build-base \ | |
| cairo-dev pango-dev chromium postgresql-client \ | |
| ffmpeg openssl busybox-extras curl bash unzip gdal | |
| # Create a virtual environment and install yt-dlp there | |
| RUN python3 -m venv /opt/venv \ | |
| && . /opt/venv/bin/activate \ | |
| && pip install --no-cache-dir yt-dlp \ | |
| && ln -sf /opt/venv/bin/yt-dlp /usr/local/bin/yt-dlp | |
| # Create symlink for python (sometimes needed) | |
| RUN ln -sf /usr/bin/python3 /usr/bin/python | |
| ENV PUPPETEER_SKIP_DOWNLOAD=true | |
| ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium | |
| # Install latest n8n | |
| RUN npm install -g n8n@latest | |
| # Create clean config directory | |
| RUN mkdir -p /data/.n8n \ | |
| && echo '{}' > /data/.n8n/settings.json \ | |
| && chmod -R 777 /data | |
| # Add keep-alive script | |
| COPY keepalive.sh /usr/local/bin/keepalive.sh | |
| RUN chmod +x /usr/local/bin/keepalive.sh | |
| WORKDIR /data | |
| ENV N8N_CONFIG_DIR=/data/.n8n | |
| CMD sh -c "/usr/local/bin/keepalive.sh & n8n start" |