2620227 21ace490e5 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>
2026-06-15 08:00:57 +00:00

sample — Node 앱 샘플 (podman 개발 + Coolify 배포)

사내 워크스페이스용 Node(ESM) 샘플. DB·MinIO 연결, podman 로컬개발, Coolify 자동배포가 미리 잡혀 있다. 이 폴더(~/projects/sample)는 읽기 전용 참조다. 직접 고치지 말고, 새 작업은 아래처럼 복사해서 시작한다.

새 프로젝트 시작

new-project myapp             # sample 을 ~/projects/myapp 으로 복사 + .project-env(DB/S3) 자동생성
cd ~/projects/myapp           # 들어오면 셸이 .project-env 를 자동 export ($DATABASE_URL 등 사용 가능)
npm install
npm run dev                   # http://localhost:3000
  • GET /healthz — 헬스체크
  • GET /db — Postgres 연결 확인 (직원 전용 schema)
  • GET /s3 — MinIO 버킷 연결 확인

컨테이너로 실행 (podman)

podman build -t sample .
podman run --rm -p 3000:3000 --env-file .project-env sample
# 또는: podman compose up --build

배포 (Coolify)

Gitea에 push → Coolify가 Dockerfile로 자동 빌드/배포. Coolify Env에 DATABASE_URL, S3_* 입력.

연결정보

  • DB: 프로젝트 .project-envDATABASE_URL (본인 schema 격리, 폴더 cd 시 자동 export)
  • MinIO(S3): endpoint https://minio.bokdev.in, bucket coolify-user-data, 키는 .project-env에 있음
  • AI: ~/.envLITELLM_KEY(update-litellm-key 명령으로 입력) → Claude Code/Codex/Gemini 공용

자세한 작업 규약은 CLAUDE.md 참고.

Description
No description provided
Readme 73 KiB
Languages
JavaScript 54.1%
HTML 43.8%
Dockerfile 2.1%