spin-frontend/nginx.conf.template
theorose49 7cab590fe2
All checks were successful
build-and-push / build (push) Successful in 36s
feat: spin 프론트엔드 전체 구현 (React+TS+Vite+Tailwind)
- 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>
2026-06-28 08:57:50 +09:00

30 lines
845 B
Plaintext

server {
listen 8080;
server_name _;
root /usr/share/nginx/html;
index index.html;
location ~ \.mjs$ {
types { text/javascript mjs; }
default_type text/javascript;
try_files $uri =404;
}
# SPA fallback
location / {
try_files $uri $uri/ /index.html;
}
# Backend API — upstream host injected from SPIN_BACKEND_URL (envsubst).
# local docker-compose: backend:8080 ; cluster: spin-backend.internal.svc.cluster.local:80
location /api/ {
proxy_pass http://${SPIN_BACKEND_URL};
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
client_max_body_size 50m;
}
}