n8n use postgres d

This commit is contained in:
2026-01-06 00:27:36 +01:00
parent d3b5f5f317
commit 140f478418
4 changed files with 52 additions and 6 deletions

View File

@@ -0,0 +1,31 @@
# Start with the official n8n image
FROM n8nio/n8n:2.2.1
# Copy apk and its deps from Alpine 3.23
COPY --from=alpine:3.23 /sbin/apk /sbin/apk
COPY --from=alpine:3.23 /usr/lib/libapk.so* /usr/lib/
# Switch to root to install dependencies
USER root
# Install Chromium and necessary dependencies for Puppeteer
RUN apk add --no-cache \
chromium \
nss \
freetype \
harfbuzz \
ca-certificates \
ttf-freefont \
wget \
nodejs \
npm
# Set environment variable for Puppeteer to find Chromium
ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium-browser
ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
RUN npm install puppeteer
# Revert back to non-root (default n8n user)
USER node

View File

@@ -3,7 +3,9 @@ services:
extends:
file: ${TEMPLATES_PATH}
service: default
image: docker.n8n.io/n8nio/n8n:2.2.1
build:
context: .
dockerfile: ${SERVICE_PATH}/n8n/Dockerfile
container_name: n8n
ports:
- 4022:5678
@@ -13,12 +15,16 @@ services:
- N8N_BLOCK_ENV_ACCESS_IN_NODE=false
- MAM_USERNAME=${N8N_MAM_USERNAME}
- MAM_PASSWORD=${N8N_MAM_PASSWORD}
- PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
- PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium-browser
user: root
- NODES_EXCLUDE=[]
- DB_TYPE=postgresdb
- DB_POSTGRESDB_HOST=postgres
- DB_POSTGRESDB_PORT=5432
- DB_POSTGRESDB_DATABASE=n8n
- DB_POSTGRESDB_USER=n8n
- DB_POSTGRESDB_PASSWORD=${N8N_DB_PASSWORD}
- DB_POSTGRESDB_SCHEMA=public
volumes:
- ${SERVICE_PATH}/n8n/data:/home/node/.n8n
entrypoint: /home/node/.n8n/script/entrypoint.sh
labels:
# Traefik
- "traefik.enable=true"