- AppShell·사이드바(역할별 네비)·탑바·UI킷, react-query·axios·recharts·dnd-kit - SP 디자인 토큰 재사용(navy/canvas/Noto Sans KR) + 회계용 고밀도 확장 - 페이지: 대시보드, 근무(타임시트·휴가/초과 신청), 프로젝트 목록/상세 (간트·칸반·캘린더·작업자portion·업체담당자·계약/분할입금 admin), 인센티브(유저 대시보드), 인센티브 관리 콘솔(단계 stepper·시뮬레이터·오버라이드), 회계(현금-인센티브 갭·원장·세금), 구성원·설정·승인·프로필 - 권한 가드: 관리자 전용 라우트, ?as=user 로 구성원 시점 미리보기 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
69e641e271
commit
7cab590fe2
+15
-5
@@ -1,8 +1,18 @@
|
||||
# Placeholder Dockerfile — nginx-unprivileged 기반 static serve, port 8080.
|
||||
# 실제 코드 추가 후 본인 stack(Node/Python/Go 등)으로 교체 권장.
|
||||
FROM nginxinc/nginx-unprivileged:1.27-alpine
|
||||
# syntax=docker/dockerfile:1
|
||||
|
||||
# 정적 파일 (html/css/js) 또는 SPA build output 을 root 에 복사.
|
||||
COPY --chown=nginx:nginx . /usr/share/nginx/html/
|
||||
# --- Stage 1: build ---
|
||||
FROM node:20-alpine AS build
|
||||
WORKDIR /app
|
||||
COPY package.json package-lock.json* ./
|
||||
RUN npm ci || npm install
|
||||
COPY . .
|
||||
RUN npm run build
|
||||
|
||||
# --- Stage 2: serve ---
|
||||
FROM nginx:alpine
|
||||
COPY --from=build /app/dist /usr/share/nginx/html
|
||||
# The image entrypoint runs envsubst over /etc/nginx/templates/*.template at
|
||||
# startup. Only SPIN_BACKEND_URL is substituted so nginx's own $vars survive.
|
||||
ENV NGINX_ENVSUBST_FILTER=SPIN_BACKEND_URL
|
||||
COPY nginx.conf.template /etc/nginx/templates/default.conf.template
|
||||
EXPOSE 8080
|
||||
|
||||
Reference in New Issue
Block a user