# Use the official n8n Docker image FROM --platform=linux/amd64 tsdocode/n8n:facebook-amd64 # Set the working directory to /data WORKDIR /data # Set the environment variables ENV N8N_TRUST_PROXY=true ENV N8N_PROTOCOL=https ENV N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=false ENV N8N_DIAGNOSTICS_ENABLED=true ENV N8N_VERSION_NOTIFICATIONS_ENABLED=true ENV N8N_TEMPLATES_ENABLED=true ENV WEBHOOK_URL=https://tsdocode-n8n.hf.space ENV EXECUTIONS_DATA_PRUNE=true ENV EXECUTIONS_DATA_MAX_AGE=168 ENV EXECUTIONS_DATA_PRUNE_MAX_COUNT=50000 ENV EXECUTIONS_DATA_SAVE_ON_ERROR=all ENV EXECUTIONS_DATA_SAVE_ON_SUCCESS=none ENV EXECUTIONS_DATA_SAVE_ON_PROGRESS=true ENV EXECUTIONS_DATA_SAVE_MANUAL_EXECUTIONS=false RUN --mount=type=secret,id=POSTGRES_HOST,mode=0444,required=true \ export DB_POSTGRES_HOST=$(cat /run/secrets/POSTGRES_HOST) RUN --mount=type=secret,id=POSTGRES_USER,mode=0444,required=true \ export DB_POSTGRES_USER=$(cat /run/secrets/POSTGRES_USER) RUN --mount=type=secret,id=POSTGRES_PASSWORD,mode=0444,required=true \ export DB_POSTGRES_PASSWORD=$(cat /run/secrets/POSTGRES_PASSWORD) # Postgres database connection settings ENV DB_TYPE=postgresdb ENV DB_POSTGRESDB_DATABASE=postgres ENV DB_POSTGRESDB_HOST=$DB_POSTGRES_HOST ENV DB_POSTGRESDB_PORT=5432 ENV DB_POSTGRESDB_USER=$DB_POSTGRES_USER ENV DB_POSTGRESDB_SCHEMA=public ENV DB_POSTGRESDB_PASSWORD=$DB_POSTGRES_PASSWORD # Expose the smtp port for n8n EXPOSE 5678