refactor: .project-env 일원화 + starter→sample 리네임

- 프로젝트 설정을 .project-env 로 통일(셸 cd 시 자동 export, 앱은 process.env 사용)
- .env.example → .project-env.example, .gitignore/.dockerignore 에 .project-env 추가
- new-project 복사 흐름 기준으로 README/CLAUDE/MANUAL 갱신
- LiteLLM 키는 ~/.env(update-litellm-key)로 분리 안내

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
infra
2026-06-14 19:10:14 +09:00
parent 08de45d6f6
commit 499e48f2e2
12 changed files with 101 additions and 62 deletions

View File

@@ -1,11 +1,13 @@
# starter — Node 앱 스타터 (podman 개발 + Coolify 배포)
# sample — Node 앱 샘플 (podman 개발 + Coolify 배포)
사내 워크스페이스용 Node(ESM) 스타터. DB·MinIO 연결, podman 로컬개발, Coolify 자동배포가 미리 잡혀 있다.
사내 워크스페이스용 Node(ESM) 샘플. DB·MinIO 연결, podman 로컬개발, Coolify 자동배포가 미리 잡혀 있다.
이 폴더(`~/projects/sample`)는 **읽기 전용 참조**다. 직접 고치지 말고, 새 작업은 아래처럼 복사해서 시작한다.
## 빠른 시작
## 새 프로젝트 시작
```bash
new-project myapp # sample 을 ~/projects/myapp 으로 복사 + .project-env(DB/S3) 자동생성
cd ~/projects/myapp # 들어오면 셸이 .project-env 를 자동 export ($DATABASE_URL 등 사용 가능)
npm install
cp .env.example .env # MinIO 키 채우기 (DB는 워크스페이스가 자동주입)
npm run dev # http://localhost:3000
```
- `GET /healthz` — 헬스체크
@@ -14,8 +16,8 @@ npm run dev # http://localhost:3000
## 컨테이너로 실행 (podman)
```bash
podman build -t starter .
podman run --rm -p 3000:3000 --env-file .env -e DATABASE_URL="$DATABASE_URL" starter
podman build -t sample .
podman run --rm -p 3000:3000 --env-file .project-env sample
# 또는: podman compose up --build
```
@@ -23,8 +25,8 @@ podman run --rm -p 3000:3000 --env-file .env -e DATABASE_URL="$DATABASE_URL" sta
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 공용
- **DB**: 프로젝트 `.project-env` `DATABASE_URL` (본인 schema 격리, 폴더 cd 시 자동 export)
- **MinIO(S3)**: endpoint `https://minio.bokdev.in`, bucket `coolify-user-data`, 키는 `.project-env`있음
- **AI**: `~/.env``LITELLM_KEY`(`update-litellm-key` 명령으로 입력) → Claude Code/Codex/Gemini 공용
자세한 작업 규약은 `CLAUDE.md` 참고.