chore: Node(ESM) 앱 스캐폴드 — Express + Postgres/MinIO 연결, podman/Coolify 설정

new-project 템플릿 기반. /healthz /db /s3 연결 확인 엔드포인트,
src/config.js 경유 외부연결, Dockerfile/compose(podman), CLAUDE.md 규약 포함.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-01 14:04:04 +09:00
commit 179226b59a
16 changed files with 2138 additions and 0 deletions

22
Dockerfile Normal file
View File

@@ -0,0 +1,22 @@
# 로컬(podman)과 Coolify 자동빌드가 공유하는 단일 Dockerfile.
# - 로컬: podman build -t sample . && podman run --rm -p 3000:3000 --env-file .project-env sample
# - 배포: Gitea push → Coolify가 이 Dockerfile로 빌드/배포
FROM node:22-alpine
WORKDIR /app
# 의존성 레이어 캐시
COPY package.json package-lock.json* ./
RUN npm ci --omit=dev || npm install --omit=dev
# 앱 소스
COPY . .
ENV NODE_ENV=production \
PORT=3000
EXPOSE 3000
# 비루트 실행
USER node
CMD ["node", "src/server.js"]