-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathDockerfile
More file actions
47 lines (30 loc) · 1.15 KB
/
Dockerfile
File metadata and controls
47 lines (30 loc) · 1.15 KB
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
FROM node:22.22.0-alpine3.23 AS build-nodes
RUN apk add --no-cache libc6-compat
RUN npm install -g pnpm@latest
WORKDIR /app
COPY community-nodes/package.json community-nodes/pnpm-lock.yaml ./
RUN pnpm install --frozen-lockfile
COPY community-nodes .
RUN pnpm build
FROM node:22.22.0-alpine3.23 AS build-hooks
RUN apk add --no-cache libc6-compat
RUN npm install -g pnpm@latest
WORKDIR /app
COPY external-hooks/package.json external-hooks/pnpm-lock.yaml ./
RUN pnpm install --frozen-lockfile
COPY external-hooks .
RUN pnpm bundle
FROM n8nio/n8n:2.5.2
WORKDIR /home/node
COPY --from=build-nodes /app/dist /community-nodes/dist
COPY --from=build-nodes /app/package.json /community-nodes/package.json
COPY --from=build-hooks /app/dist /external-hooks
COPY external-hooks/drizzle /external-hooks/drizzle
ENV N8N_PORT=5678 \
N8N_TRUST_PROXY=true \
N8N_PROXY_HOPS=1 \
N8N_PROTOCOL="https" \
N8N_COMMUNITY_PACKAGES_ENABLED=true \
N8N_CUSTOM_EXTENSIONS="/home/node/.n8n/nodes" \
EXTERNAL_HOOK_FILES=/external-hooks/oidc.cjs:/external-hooks/test.cjs:/external-hooks/custom-api.cjs \
EXTERNAL_FRONTEND_HOOKS_URLS=/assets/oidc-frontend-hook.js