playingapi commited on
Commit
8a61573
·
verified ·
1 Parent(s): 34cdefd

Create Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +31 -0
Dockerfile ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # 使用 Node.js 镜像构建和运行应用
2
+ FROM node:lts-slim
3
+
4
+ # 安装 git 和 ca-certificates
5
+ RUN apt-get update && \
6
+ apt-get install -y --no-install-recommends git ca-certificates && \
7
+ apt-get clean && \
8
+ rm -rf /var/lib/apt/lists/*
9
+
10
+ # 设置工作目录并克隆项目
11
+ WORKDIR /app
12
+ ARG REPO_URL=https://github.com/HChaoHui/msOauth2api.git
13
+ ARG BRANCH=vps
14
+ RUN git clone -b ${BRANCH} ${REPO_URL} .
15
+ COPY .env /app/
16
+
17
+ # 安装 Yarn 依赖
18
+ RUN yarn install --frozen-lockfile
19
+
20
+ # 创建非 root 用户
21
+ RUN useradd -m -u 1000 appuser && \
22
+ chown -R appuser:appuser /app
23
+
24
+ # 切换到非 root 用户
25
+ USER appuser
26
+
27
+ # 暴露端口(根据 .env 文件,默认 9898)
28
+ EXPOSE 9898
29
+
30
+ # 启动 Node.js 应用
31
+ CMD ["node", "app.js"]