init: Node starter (podman dev + Coolify deploy, Claude agent 골격)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
0310700
2026-06-14 16:20:37 +09:00
commit e293f2cb87
14 changed files with 284 additions and 0 deletions

30
README.md Normal file
View File

@@ -0,0 +1,30 @@
# starter — Node 앱 스타터 (podman 개발 + Coolify 배포)
사내 워크스페이스용 Node(ESM) 스타터. DB·MinIO 연결, podman 로컬개발, Coolify 자동배포가 미리 잡혀 있다.
## 빠른 시작
```bash
npm install
cp .env.example .env # MinIO 키 채우기 (DB는 워크스페이스가 자동주입)
npm run dev # http://localhost:3000
```
- `GET /healthz` — 헬스체크
- `GET /db` — Postgres 연결 확인 (직원 전용 schema)
- `GET /s3` — MinIO 버킷 연결 확인
## 컨테이너로 실행 (podman)
```bash
podman build -t starter .
podman run --rm -p 3000:3000 --env-file .env -e DATABASE_URL="$DATABASE_URL" starter
# 또는: podman compose up --build
```
## 배포 (Coolify)
Gitea에 push → Coolify가 `Dockerfile`로 자동 빌드/배포. Coolify Env에 `DATABASE_URL`, `S3_*` 입력.
## 연결정보
- **DB**: 워크스페이스 env `DATABASE_URL` 자동주입 (본인 schema 격리)
- **MinIO(S3)**: endpoint `https://minio.bokdev.in`, bucket `coolify-user-data`, 키는 `.env`에 직접 입력
- **AI**: `~/.config/litellm/key` 에 LiteLLM virtual key 입력 → Claude Code/Codex/Gemini 공용
자세한 작업 규약은 `CLAUDE.md` 참고.