chore: 사내 Node 샘플 scaffold (new-project 템플릿)

podman 로컬개발 + Coolify(Dockerfile) 배포용 베이스.
- Express 서버: /healthz, /db, /s3 연결 확인
- src/config.js 단일 진입점 → src/db.js(pg), src/s3.js(MinIO)
- scripts/check-db.js, check-minio.js 연결 점검
- Dockerfile / compose.yaml / .dockerignore, 비밀값은 env 파일(gitignore)에서만

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-15 08:00:57 +00:00
commit 21ace490e5
15 changed files with 2332 additions and 0 deletions

17
compose.yaml Normal file
View File

@@ -0,0 +1,17 @@
# 로컬 개발용 (podman compose 또는 podman play). 운영 배포는 Coolify가 담당.
# podman compose up --build
# DB/MinIO 접속정보는 프로젝트 .project-env 에서 주입됨(프로젝트 폴더 cd 시 셸이 자동 export).
services:
app:
build: .
ports:
- "3000:3000"
env_file:
- .project-env
environment:
# 워크스페이스에 자동 주입된 값을 컨테이너로 전달
DATABASE_URL: ${DATABASE_URL}
S3_ENDPOINT: ${S3_ENDPOINT:-https://minio.bokdev.in}
S3_BUCKET: ${S3_BUCKET:-coolify-user-data}
S3_ACCESS_KEY_ID: ${S3_ACCESS_KEY_ID}
S3_SECRET_ACCESS_KEY: ${S3_SECRET_ACCESS_KEY}