Ankit Singh commited on
Commit
b4f0166
·
1 Parent(s): b5df2e4

n8n host version 3

Browse files
Files changed (1) hide show
  1. Dockerfile +15 -19
Dockerfile CHANGED
@@ -2,6 +2,7 @@ FROM node:24-alpine
2
 
3
  # Set user to root for installation
4
  USER root
 
5
  # Arguments that can be passed at build time
6
  ARG N8N_PATH=/usr/local/lib/node_modules/n8n
7
  ARG BASE_PATH=/root/.n8n
@@ -9,22 +10,6 @@ ARG DATABASE_PATH=$BASE_PATH/database
9
  ARG CONFIG_PATH=$BASE_PATH/config
10
  ARG WORKFLOWS_PATH=$BASE_PATH/workflows
11
  ARG LOGS_PATH=$BASE_PATH/logs
12
- ARG N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=$N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS
13
- ARG N8N_HOST=$N8N_HOST
14
- ARG N8N_PORT=$N8N_PORT
15
- ARG N8N_PROTOCOL=https
16
- ARG N8N_EDITOR_BASE_URL=$N8N_EDITOR_BASE_URL
17
- ARG WEBHOOK_URL=$WEBHOOK_URL
18
- ARG GENERIC_TIMEZONE=$GENERIC_TIMEZONE
19
- ARG TZ=$TZ
20
- ARG N8N_ENCRYPTION_KEY=$N8N_ENCRYPTION_KEY
21
- ARG DB_TYPE=$DB_TYPE
22
- ARG DB_POSTGRESDB_SCHEMA=$DB_POSTGRESDB_SCHEMA
23
- ARG DB_POSTGRESDB_HOST=$DB_POSTGRESDB_HOST
24
- ARG DB_POSTGRESDB_DATABASE=$DB_POSTGRESDB_DATABASE
25
- ARG DB_POSTGRESDB_PORT=$DB_POSTGRESDB_PORT
26
- ARG DB_POSTGRESDB_USER=$DB_POSTGRESDB_USER
27
- ARG DB_POSTGRESDB_PASSWORD=$DB_POSTGRESDB_PASSWORD
28
 
29
  # Install system dependencies
30
  RUN apk add --no-cache \
@@ -39,12 +24,19 @@ RUN apk add --no-cache \
39
  chromium \
40
  postgresql-client \
41
  ffmpeg \
42
- yt-dlp
 
43
 
44
- # Set environment variables
45
  ENV PUPPETEER_SKIP_DOWNLOAD=true
46
  ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium-browser
47
 
 
 
 
 
 
 
48
  # Install n8n globally
49
  RUN npm install -g n8n@1.101.0
50
 
@@ -55,5 +47,9 @@ RUN mkdir -p $DATABASE_PATH $CONFIG_PATH $WORKFLOWS_PATH $LOGS_PATH \
55
  # Set working directory
56
  WORKDIR /data
57
 
58
- # Start n8n
 
 
 
 
59
  CMD ["n8n", "start"]
 
2
 
3
  # Set user to root for installation
4
  USER root
5
+
6
  # Arguments that can be passed at build time
7
  ARG N8N_PATH=/usr/local/lib/node_modules/n8n
8
  ARG BASE_PATH=/root/.n8n
 
10
  ARG CONFIG_PATH=$BASE_PATH/config
11
  ARG WORKFLOWS_PATH=$BASE_PATH/workflows
12
  ARG LOGS_PATH=$BASE_PATH/logs
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13
 
14
  # Install system dependencies
15
  RUN apk add --no-cache \
 
24
  chromium \
25
  postgresql-client \
26
  ffmpeg \
27
+ yt-dlp \
28
+ tini
29
 
30
+ # Set environment variables for Puppeteer
31
  ENV PUPPETEER_SKIP_DOWNLOAD=true
32
  ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium-browser
33
 
34
+ # Set n8n environment variables for Hugging Face Spaces
35
+ ENV N8N_HOST=0.0.0.0
36
+ ENV N8N_PORT=7860
37
+ ENV N8N_PROTOCOL=https
38
+ ENV N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true
39
+
40
  # Install n8n globally
41
  RUN npm install -g n8n@1.101.0
42
 
 
47
  # Set working directory
48
  WORKDIR /data
49
 
50
+ # Expose port for Hugging Face Spaces
51
+ EXPOSE 7860
52
+
53
+ # Use tini as init system and start n8n
54
+ ENTRYPOINT ["tini", "--"]
55
  CMD ["n8n", "start"]