File size: 1,187 Bytes
e110d9d 42a7d7b e110d9d 42a7d7b e110d9d 42a7d7b e110d9d 320e776 e110d9d | 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 | FROM node:22-slim
ARG N8N_VERSION=latest
ENV DEBIAN_FRONTEND=noninteractive \
N8N_PORT=5678 \
HF_HUB_DISABLE_PROGRESS_BARS=1 \
PYTHONUNBUFFERED=1
RUN apt-get update && apt-get install -y --no-install-recommends \
ca-certificates \
curl \
git \
jq \
python3 \
python3-pip \
sqlite3 \
tini \
&& pip3 install --no-cache-dir --break-system-packages huggingface_hub \
&& npm install -g n8n@${N8N_VERSION} \
&& rm -rf /var/lib/apt/lists/*
RUN mkdir -p /home/node/app /home/node/.n8n && \
chmod 700 /home/node/.n8n && \
chown -R node:node /home/node
WORKDIR /home/node/app
COPY --chown=node:node health-server.js /home/node/app/health-server.js
COPY --chown=node:node n8n-sync.py /home/node/app/n8n-sync.py
COPY --chown=node:node setup-uptimerobot.sh /home/node/app/setup-uptimerobot.sh
COPY --chown=node:node start.sh /home/node/app/start.sh
RUN chmod +x /home/node/app/start.sh /home/node/app/setup-uptimerobot.sh
USER node
EXPOSE 7861
HEALTHCHECK --interval=30s --timeout=5s --start-period=60s \
CMD curl -f http://localhost:7861/health || exit 1
ENTRYPOINT ["/usr/bin/tini", "--"]
CMD ["/home/node/app/start.sh"]
|