251119:1200 set backend
This commit is contained in:
48
backend.bak/Dockerfile
Normal file
48
backend.bak/Dockerfile
Normal file
@@ -0,0 +1,48 @@
|
||||
# File: Dockerfile
|
||||
# บันทึกการแก้ไข: (สร้างไฟล์)
|
||||
|
||||
# --- STAGE 1: Builder ---
|
||||
# ติดตั้ง Dependencies และ Build โค้ด
|
||||
FROM node:18-alpine AS builder
|
||||
|
||||
WORKDIR /usr/src/app
|
||||
|
||||
# Copy package.json และ lock file
|
||||
COPY package*.json ./
|
||||
|
||||
# ติดตั้ง Dependencies (สำหรับ Build)
|
||||
RUN npm install
|
||||
|
||||
# Copy source code ทั้งหมด
|
||||
COPY . .
|
||||
|
||||
# Build application
|
||||
RUN npm run build
|
||||
|
||||
# ติดตั้งเฉพาะ Production Dependencies (สำหรับ Stage สุดท้าย)
|
||||
RUN npm prune --production
|
||||
|
||||
# --- STAGE 2: Runner ---
|
||||
# Image สุดท้ายที่มีขนาดเล็ก
|
||||
FROM node:18-alpine
|
||||
|
||||
WORKDIR /usr/src/app
|
||||
|
||||
# (Security) สร้าง User ที่ไม่มีสิทธิ์ Root
|
||||
RUN addgroup -S nestjs && adduser -S nestjs -G nestjs
|
||||
USER nestjs
|
||||
|
||||
# Copy Production Dependencies (จาก Stage 1)
|
||||
COPY --from=builder /usr/src/app/node_modules ./node_modules
|
||||
|
||||
# Copy Build Artifacts (จาก Stage 1)
|
||||
COPY --from=builder /usr/src/app/dist ./dist
|
||||
|
||||
# Copy package.json (เผื่อจำเป็น)
|
||||
COPY package*.json ./
|
||||
|
||||
# เปิด Port (อ่านจาก Environment Variable)
|
||||
EXPOSE ${PORT:-3000}
|
||||
|
||||
# รัน Application
|
||||
CMD [ "node", "dist/main" ]
|
||||
Reference in New Issue
Block a user