2620227 3252dfaa66 chore(harness): 비밀 파일 읽기 차단 가드 + 규약 문서화
- .claude/hooks/block-secrets.mjs: PreToolUse 훅으로 비밀값 파일 접근 하드 차단
  (Read/Edit/Write + Bash cat/less 우회까지). example 파일은 허용.
- .claude/settings.json: permissions.deny + 자주 쓰는 dev 명령 allow + 훅 연결
- CLAUDE.md: init 표준 헤더, 하네스 가드/아키텍처 섹션 추가

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-15 08:01:46 +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%