|
|
|
FROM node:20-alpine |
|
|
|
|
|
ENV N8N_USER_FOLDER=/home/node/.n8n |
|
ENV N8N_DISABLE_PRODUCTION_MAIN_PROCESS_BETA=true |
|
ENV N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true |
|
ENV NODE_FUNCTION_ALLOW_EXTERNAL=puppeteer,playwright |
|
ENV DB_TYPE=postgresdb |
|
ENV DB_POSTGRESDB_HOST="" |
|
ENV DB_POSTGRESDB_PORT=5432 |
|
ENV DB_POSTGRESDB_DATABASE=postgres |
|
ENV DB_POSTGRESDB_USER=postgres |
|
ENV DB_POSTGRESDB_PASSWORD="" |
|
ENV DB_POSTGRESDB_SSL=true |
|
|
|
|
|
|
|
USER root |
|
RUN apk add --no-cache \ |
|
git \ |
|
procps-ng \ |
|
udev \ |
|
ttf-freefont \ |
|
chromium \ |
|
nss \ |
|
freetype \ |
|
harfbuzz \ |
|
ca-certificates \ |
|
dbus-glib \ |
|
fontconfig \ |
|
ffmpeg \ |
|
yt-dlp |
|
|
|
|
|
RUN npm install -g n8n@latest playwright puppeteer --omit=dev |
|
|
|
|
|
RUN npx playwright install |
|
|
|
|
|
USER node |
|
WORKDIR /home/node |
|
|
|
|
|
|
|
COPY --chown=node:node entrypoint.sh . |
|
|
|
|
|
RUN chmod +x ./entrypoint.sh |
|
|
|
|
|
|
|
ENTRYPOINT ["./entrypoint.sh"] |
|
|
|
|
|
EXPOSE 5678 |