프로젝트명 변경: choco-admin -> chocoadmin

This commit is contained in:
2026-06-11 11:22:01 +09:00
parent 976fe42a2a
commit d82f39c2f6
11 changed files with 38 additions and 40 deletions
+5 -5
View File
@@ -1,13 +1,13 @@
# choco-admin 프로젝트 계획서
# chocoadmin 프로젝트 계획서
## 1. 프로젝트 개요
| 항목 | 내용 |
|---|---|
| 서비스명 | choco-admin |
| 서비스명 | chocoadmin |
| 목적 | chocomae 웹 서비스(mouse-typing)의 관리자 기능을 독립 웹 서비스로 분리 |
| 기존 서비스 경로 | `/Users/jisangs/work/jinaju/git/web/mouse-typing` |
| 신규 서비스 경로 | `/Users/jisangs/work/jinaju/git/web/choco-admin` |
| 신규 서비스 경로 | `/Users/jisangs/work/jinaju/git/web/chocoadmin` |
| 사용 DB | 기존 chocomae DB (MariaDB 10.11.13) 그대로 사용 |
---
@@ -111,7 +111,7 @@
```yaml
# docker-compose.yml (개발용)
services:
choco-admin:
chocoadmin:
build: .
ports:
- "3001:3000"
@@ -296,7 +296,7 @@ app/
## 9. 디렉토리 구조 (목표)
```
choco-admin/
chocoadmin/
├── app/
│ ├── (auth)/
│ │ └── login/
+9 -9
View File
@@ -1,13 +1,13 @@
# choco-admin 개발 작업 계획
# chocoadmin 개발 작업 계획
## 1. 프로젝트 개요
`choco-admin`은 기존 `chocomae` 웹 서비스의 관리자 페이지와 관리자 기능만 독립 분리하는 신규 관리자 웹 서비스이다.
`chocoadmin`은 기존 `chocomae` 웹 서비스의 관리자 페이지와 관리자 기능만 독립 분리하는 신규 관리자 웹 서비스이다.
- 기존 서비스명: `chocomae`
- 기존 서비스 개발 디렉토리: `/Users/jisangs/work/jinaju/git/web/mouse-typing`
- 신규 서비스명: `choco-admin`
- 신규 서비스 개발 디렉토리: `/Users/jisangs/work/jinaju/git/web/choco-admin`
- 신규 서비스명: `chocoadmin`
- 신규 서비스 개발 디렉토리: `/Users/jisangs/work/jinaju/git/web/chocoadmin`
- 개발 목표: 기존 `mouse-typing` 서비스의 관리자 기능을 Next.js 기반 독립 서비스로 재구성
- 기존 운영 환경: AWS EC2 `t3a.medium` 인스턴스 1개
- 신규 개발/운영 플랫폼: Synology NAS Docker
@@ -56,7 +56,7 @@
- 장점: Next.js와 궁합이 좋고, 관리자 화면에 필요한 버튼, 입력, 다이얼로그, 탭, 폼 구성이 빠름
- 장점: 컴포넌트 코드를 프로젝트 안에서 직접 소유하므로 장기 유지보수에 유리함
- 단점: Tailwind 클래스에 익숙해지는 시간이 필요함
- 추천 이유: `choco-admin`처럼 작은 팀/개인 프로젝트에서 빠르게 만들고 나중에 고치기 좋음
- 추천 이유: `chocoadmin`처럼 작은 팀/개인 프로젝트에서 빠르게 만들고 나중에 고치기 좋음
### 2순위: Mantine
@@ -84,7 +84,7 @@
- 장점: 서버 사이드 페이지네이션, 정렬, 필터링을 구현하기 좋음
- 장점: shadcn/ui의 Data Table 패턴과 잘 맞음
- 단점: 직접 조립해야 하는 부분이 있어 초기 구현량이 있음
- 추천 이유: 관리자 기능이 늘어날 가능성이 높은 `choco-admin`에 가장 유연함
- 추천 이유: 관리자 기능이 늘어날 가능성이 높은 `chocoadmin`에 가장 유연함
### 2순위: AG Grid Community
@@ -104,7 +104,7 @@
## 6. DB 기준 관리자 대상 테이블
스키마 파일: `/Users/jisangs/work/jinaju/git/web/choco-admin/docs/db-reference/schema.sql`
스키마 파일: `/Users/jisangs/work/jinaju/git/web/chocoadmin/docs/db-reference/schema.sql`
### 주요 테이블
@@ -269,7 +269,7 @@
## 8. 애플리케이션 구조 제안
```text
choco-admin/
chocoadmin/
app/
login/
maestros/
@@ -313,7 +313,7 @@ choco-admin/
### 운영 환경
- Synology NAS Docker에서 `choco-admin` 컨테이너 실행
- Synology NAS Docker에서 `chocoadmin` 컨테이너 실행
- 운영 DB는 기존 AWS EC2 MariaDB에 접속
- AWS 보안 그룹에서 Synology NAS 공인 IP만 MariaDB 접속 허용
- DB 계정은 관리자 서비스 전용 계정으로 분리
+7 -7
View File
@@ -1,13 +1,13 @@
# choco-admin 프로젝트 계획서
# chocoadmin 프로젝트 계획서
## 1. 프로젝트 개요
| 항목 | 내용 |
|---|---|
| 서비스명 | choco-admin |
| 서비스명 | chocoadmin |
| 목적 | chocomae 웹 서비스(mouse-typing)의 관리자 기능을 독립 웹 서비스로 분리 |
| 기존 서비스 경로 | `/Users/jisangs/work/jinaju/git/web/mouse-typing` |
| 신규 서비스 경로 | `/Users/jisangs/work/jinaju/git/web/choco-admin` |
| 신규 서비스 경로 | `/Users/jisangs/work/jinaju/git/web/chocoadmin` |
| 기존 운영 환경 | AWS EC2 t3a.medium 인스턴스 1개 |
| 사용 DB | 기존 chocomae DB (MariaDB 10.11.13) 그대로 사용 |
@@ -70,7 +70,7 @@
| 실행 방법 | Synology Container Manager (`docker compose up`) |
| DB (서비스) | AWS EC2 MariaDB (chocomae 서비스와 동일 인스턴스) |
| DB 접근 | AWS 보안그룹에서 NAS 외부 IP만 3306 포트 허용 |
| DB 계정 | choco-admin 전용 최소 권한 계정으로 분리 |
| DB 계정 | chocoadmin 전용 최소 권한 계정으로 분리 |
| 환경변수 | `.env.production` 또는 Container Manager 환경변수 설정 |
### 4-3. Dockerfile / docker-compose (배포용)
@@ -90,7 +90,7 @@ CMD ["pnpm", "start"]
```yaml
# docker-compose.yml
services:
choco-admin:
chocoadmin:
build: .
ports:
- "3001:3000"
@@ -151,7 +151,7 @@ services:
## 6. 애플리케이션 구조
```
choco-admin/
chocoadmin/
├── app/
│ ├── (auth)/
│ │ └── login/
@@ -277,7 +277,7 @@ choco-admin/
2. 기존 `admin.Password` 저장 방식(평문/해시/자체 암호화)을 먼저 확인한 뒤 동일 방식 또는 해시 업그레이드를 결정한다.
3. 승인·취소·거절 액션은 Next.js Server Action 또는 API Route에서 CSRF 보호를 적용한다.
4. DB 연결 정보는 `.env` 파일로 관리하며 Git에 커밋하지 않는다.
5. 배포 DB 계정은 choco-admin 전용 계정으로 분리하고 최소 권한(SELECT + 필요한 테이블만 UPDATE)을 적용한다.
5. 배포 DB 계정은 chocoadmin 전용 계정으로 분리하고 최소 권한(SELECT + 필요한 테이블만 UPDATE)을 적용한다.
6. AWS EC2 보안그룹에서 MariaDB 포트(3306)를 NAS 외부 IP로만 허용한다.
7. 관리자 전용 서비스이므로 외부에 직접 노출하지 않고 VPN 또는 NAS 내부 포트로 접근하는 방식을 권장한다.