사주 풀이 고도화, NAS 배포 자동화

This commit is contained in:
2026-02-16 19:02:04 +09:00
parent d513c063cf
commit 7042373448
44 changed files with 6280 additions and 978 deletions

61
SETUP_GUIDE.md Normal file
View File

@@ -0,0 +1,61 @@
# 🚀 사주 웹사이트: 유저 시스템 및 결제 연동 가이드
## 1. Supabase (데이터베이스 & 인증) 설정
이 프로젝트는 유저 정보, 사주 기록, 결제 내역을 저장하기 위해 Supabase를 사용합니다.
### 1-1. Supabase 프로젝트 생성
1. [Supabase](https://supabase.com/)에 가입하고 'New Project'를 생성합니다.
2. Database Password를 안전한 곳에 저장해두세요.
3. Region은 'Seoul (South Korea)'를 선택하는 것이 속도 면에서 좋습니다.
### 1-2. 환경 변수 설정 (.env.local)
프로젝트 생성 후 `Project Settings > API`에서 `URL``anon public key`를 복사하여 프로젝트 루트의 `.env.local` 파일에 추가하세요.
```bash
NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
```
### 1-3. 데이터베이스 테이블 생성
Supabase 대시보드의 `SQL Editor` 메뉴로 이동하여, 프로젝트 내 `supabase/schema.sql` 파일의 내용을 복사해 실행하세요.
- `users` 테이블 (Auth 연동)
- `saju_records` 테이블 (사주 결과 저장)
- `payments` 테이블 (결제 내역)
### 1-4. 소셜 로그인 설정 (선택)
`Authentication > Providers`에서 Google, Kakao 등 원하는 소셜 로그인을 활성화할 수 있습니다.
---
## 2. PortOne (결제 시스템) 설정
결제 기능(990원 결제)을 위해 PortOne(구 아임포트)을 사용합니다.
### 2-1. PortOne 회원가입 및 설정
1. [PortOne 관리자 콘솔](https://admin.portone.io/)에 가입합니다.
2. `결제 연동 > 식별코드` 메뉴에서 `가맹점 식별코드(IMP Code)`를 확인합니다.
3. `PG사 설정`에서 테스트용으로 'KG이니시스' 또는 '카카오페이' 등을 연동합니다 (테스트 모드).
### 2-2. 환경 변수 추가
`.env.local` 파일에 식별코드를 추가하세요.
```bash
NEXT_PUBLIC_PORTONE_IMP_CODE=imp00000000 # 본인의 식별코드로 변경
```
## 3. OpenAI API 설정 (전문가 사주 해석)
전문가 수준의 AI 해석을 위해 OpenAI API 키가 필요합니다.
[OpenAI Platform](https://platform.openai.com/)에서 API Key를 발급받아 추가하세요.
```bash
OPENAI_API_KEY=sk-proj-...
```
---
## 4. 로컬 실행
모든 설정이 완료되면 로컬 서버를 재시작하세요.
```bash
npm run dev
```