Update Dockerfile
Browse files- Dockerfile +15 -17
Dockerfile
CHANGED
|
@@ -1,34 +1,32 @@
|
|
| 1 |
-
#
|
| 2 |
FROM node:20-bookworm-slim
|
| 3 |
|
| 4 |
-
# Thiết lập
|
| 5 |
-
# Port 7860 là bắt buộc trên HF Spaces
|
| 6 |
ENV PORT=7860
|
| 7 |
ENV N8N_PORT=7860
|
| 8 |
ENV N8N_HOST=0.0.0.0
|
| 9 |
ENV N8N_PROTOCOL=https
|
| 10 |
|
| 11 |
-
# Tắt các
|
| 12 |
ENV N8N_DIAGNOSTICS_ENABLED=false
|
| 13 |
ENV N8N_PERSONALIZATION_ENABLED=false
|
| 14 |
|
| 15 |
-
#
|
| 16 |
WORKDIR /app
|
| 17 |
|
| 18 |
-
#
|
| 19 |
-
|
|
|
|
| 20 |
|
| 21 |
-
#
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
RUN npm install -g n8n n8n-nodes-zalo-tools
|
| 25 |
|
| 26 |
-
#
|
| 27 |
-
RUN mkdir -p /home/node/.n8n && chown -R node:node /home/node/.n8n /app
|
| 28 |
-
|
| 29 |
-
# Chuyển sang user node (bảo mật, Hugging Face khuyến nghị)
|
| 30 |
USER node
|
| 31 |
|
| 32 |
-
#
|
| 33 |
-
|
|
|
|
|
|
|
| 34 |
CMD ["n8n", "start"]
|
|
|
|
| 1 |
+
# Sử dụng môi trường Node.js 20 (LTS) chuẩn Debian (dễ chịu hơn Alpine cho dev)
|
| 2 |
FROM node:20-bookworm-slim
|
| 3 |
|
| 4 |
+
# Thiết lập Port 7860 bắt buộc cho Hugging Face Spaces
|
|
|
|
| 5 |
ENV PORT=7860
|
| 6 |
ENV N8N_PORT=7860
|
| 7 |
ENV N8N_HOST=0.0.0.0
|
| 8 |
ENV N8N_PROTOCOL=https
|
| 9 |
|
| 10 |
+
# Tắt các thông báo/telemetry không cần thiết
|
| 11 |
ENV N8N_DIAGNOSTICS_ENABLED=false
|
| 12 |
ENV N8N_PERSONALIZATION_ENABLED=false
|
| 13 |
|
| 14 |
+
# Thiết lập thư mục làm việc
|
| 15 |
WORKDIR /app
|
| 16 |
|
| 17 |
+
# Cài đặt n8n Global (bản Core mới nhất từ NPM)
|
| 18 |
+
# Đây là cách clean nhất để chạy n8n trên môi trường Node
|
| 19 |
+
RUN npm install -g n8n
|
| 20 |
|
| 21 |
+
# Tạo thư mục dữ liệu và cấp quyền cho user 'node' (tránh lỗi EACCES)
|
| 22 |
+
RUN mkdir -p /home/node/.n8n && \
|
| 23 |
+
chown -R node:node /home/node/.n8n /app
|
|
|
|
| 24 |
|
| 25 |
+
# Chuyển sang user node (Best practice bảo mật)
|
|
|
|
|
|
|
|
|
|
| 26 |
USER node
|
| 27 |
|
| 28 |
+
# Mở cổng
|
| 29 |
+
EXPOSE 7860
|
| 30 |
+
|
| 31 |
+
# Chạy n8n trực tiếp
|
| 32 |
CMD ["n8n", "start"]
|