打包镜像
This commit is contained in:
+12
-6
@@ -2,17 +2,23 @@ FROM node:24
|
|||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
# 复制 package.json 和 package-lock.json
|
# 安装 pnpm
|
||||||
COPY package*.json ./
|
RUN npm install -g pnpm
|
||||||
|
|
||||||
# 安装依赖(包含 devDependencies 用于构建,包含可选依赖以获取 Linux 原生绑定)
|
# 复制 package.json 和 pnpm-lock.yaml
|
||||||
RUN npm ci --include=dev
|
COPY package.json pnpm-lock.yaml ./
|
||||||
|
|
||||||
|
# 安装依赖(包含 devDependencies 用于构建)
|
||||||
|
RUN pnpm install --frozen-lockfile
|
||||||
|
|
||||||
# 复制源代码
|
# 复制源代码
|
||||||
COPY . .
|
COPY . .
|
||||||
|
|
||||||
|
# 修复 Windows 换行符问题
|
||||||
|
RUN sed -i 's/\r$//' start.sh
|
||||||
|
|
||||||
# 构建应用
|
# 构建应用
|
||||||
RUN npm run build:production:multi
|
RUN pnpm run build:production:multi
|
||||||
|
|
||||||
# 安装 PM2
|
# 安装 PM2
|
||||||
RUN npm install -g pm2
|
RUN npm install -g pm2
|
||||||
@@ -22,4 +28,4 @@ EXPOSE 51703-51708
|
|||||||
ENV NODE_ENV=production
|
ENV NODE_ENV=production
|
||||||
|
|
||||||
# 直接启动 PM2,不需要重新构建(构建已在上面完成)
|
# 直接启动 PM2,不需要重新构建(构建已在上面完成)
|
||||||
CMD ["pm2-runtime", "start", "ecosystem.config.cjs", "--env", "production"]
|
CMD ["pm2-runtime", "start", "ecosystem.config.cjs", "--env", "production"]
|
||||||
|
|||||||
+2
-2
@@ -66,7 +66,8 @@
|
|||||||
"remark-math": "^6.0.0",
|
"remark-math": "^6.0.0",
|
||||||
"remixicon": "^4.6.0",
|
"remixicon": "^4.6.0",
|
||||||
"tslib": "^2.8.1",
|
"tslib": "^2.8.1",
|
||||||
"uuid": "^11.1.0"
|
"uuid": "^11.1.0",
|
||||||
|
"cross-env": "^7.0.3"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@remix-run/dev": "^2.16.2",
|
"@remix-run/dev": "^2.16.2",
|
||||||
@@ -79,7 +80,6 @@
|
|||||||
"@typescript-eslint/eslint-plugin": "^6.7.4",
|
"@typescript-eslint/eslint-plugin": "^6.7.4",
|
||||||
"@typescript-eslint/parser": "^6.7.4",
|
"@typescript-eslint/parser": "^6.7.4",
|
||||||
"autoprefixer": "^10.4.21",
|
"autoprefixer": "^10.4.21",
|
||||||
"cross-env": "^7.0.3",
|
|
||||||
"esbuild": "^0.25.1",
|
"esbuild": "^0.25.1",
|
||||||
"eslint": "^8.38.0",
|
"eslint": "^8.38.0",
|
||||||
"eslint-import-resolver-typescript": "^3.6.1",
|
"eslint-import-resolver-typescript": "^3.6.1",
|
||||||
|
|||||||
Reference in New Issue
Block a user