hijnu commited on
Commit
767500e
·
verified ·
1 Parent(s): c035293

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +15 -6
Dockerfile CHANGED
@@ -1,12 +1,11 @@
1
  # 使用官方的 Node.js 镜像,基于 Debian Slim 版本,更加精简
2
  FROM node:slim
3
 
4
- # 创建非root用户
5
- RUN useradd -ms /bin/bash nonroot
6
 
7
- # 设置工作目录并切换用户
8
  WORKDIR /home/node/app
9
- USER nonroot
10
 
11
  # 安装 Python3, pip, rclone 及其他常用工具
12
  RUN apt-get update && \
@@ -20,9 +19,19 @@ RUN apt-get update && \
20
  apt-get clean && \
21
  rm -rf /var/lib/apt/lists/*
22
 
 
 
 
23
  # 全局安装 n8n
24
  RUN npm install n8n -g
25
 
 
 
 
 
 
 
 
26
  # 设置环境变量,包括时区设置
27
  ENV N8N_HOST=0.0.0.0
28
  ENV N8N_PORT=5678
@@ -33,5 +42,5 @@ ENV GENERIC_TIMEZONE=Asia/Shanghai
33
  # 暴露 n8n 端口
34
  EXPOSE 5678
35
 
36
- # 启动 n8n
37
- CMD ["n8n", "start"]
 
1
  # 使用官方的 Node.js 镜像,基于 Debian Slim 版本,更加精简
2
  FROM node:slim
3
 
4
+ # 切换到 root 用户以安装必要的软件包
5
+ USER root
6
 
7
+ # 设置工作目录
8
  WORKDIR /home/node/app
 
9
 
10
  # 安装 Python3, pip, rclone 及其他常用工具
11
  RUN apt-get update && \
 
19
  apt-get clean && \
20
  rm -rf /var/lib/apt/lists/*
21
 
22
+ # 设置目录权限
23
+ RUN chown -R node:node /home/node
24
+
25
  # 全局安装 n8n
26
  RUN npm install n8n -g
27
 
28
+ # 复制启动脚本并赋予执行权限
29
+ COPY entrypoint.sh /entrypoint.sh
30
+ RUN chmod +x /entrypoint.sh
31
+
32
+ # 切换回 node 用户
33
+ USER node
34
+
35
  # 设置环境变量,包括时区设置
36
  ENV N8N_HOST=0.0.0.0
37
  ENV N8N_PORT=5678
 
42
  # 暴露 n8n 端口
43
  EXPOSE 5678
44
 
45
+ # 设置启动脚本为入口点
46
+ ENTRYPOINT ["/entrypoint.sh"]