An open API service indexing awesome lists of open source software.

https://github.com/ai-x-4-a1-final/narrativa_develop

Narrativa Docker Repository
https://github.com/ai-x-4-a1-final/narrativa_develop

backend frontend ml

Last synced: 3 months ago
JSON representation

Narrativa Docker Repository

Awesome Lists containing this project

README

          

![NARRATIVA-TITLE](https://github.com/user-attachments/assets/97538156-f202-4b48-8543-9bbf835fda0e)

# Narrativa Develop

![Spring Boot](https://img.shields.io/badge/Spring%20Boot-v3.3.5-6DB33F?style=for-the-badge&logo=springboot&logoColor=white)
![Spring Security](https://img.shields.io/badge/Spring%20Security-v6.2.4-6DB33F?style=for-the-badge&logo=springsecurity&logoColor=white)
![MySQL](https://img.shields.io/badge/MySQL-8.4.3%20LTS-4479A1?style=for-the-badge&logo=mysql&logoColor=white)

![React](https://img.shields.io/badge/React-18.3.1-61DAFB?style=for-the-badge&logo=react&logoColor=white)
![TypeScript](https://img.shields.io/badge/TypeScript-4.9.5-3178C6?style=for-the-badge&logo=typescript&logoColor=white)
![TailwindCSS](https://img.shields.io/badge/TailwindCSS-3.4.15-06B6D4?style=for-the-badge&logo=tailwindcss&logoColor=white)

![Python](https://img.shields.io/badge/Python-v3.12.7-3776AB?style=for-the-badge&logo=python&logoColor=white)
![PyTorch](https://img.shields.io/badge/PyTorch-v2.5.1-EE4C2C?style=for-the-badge&logo=pytorch&logoColor=white)
![FastAPI](https://img.shields.io/badge/FastAPI-v0.115.4-009688?style=for-the-badge&logo=fastapi&logoColor=white)

## πŸ—οΈ ν”„λ‘œμ νŠΈ μ†Œκ°œ

> κ°œλ°œν™˜κ²½μ„ ν†΅μΌν•˜κΈ° μœ„ν•œ λ¦¬ν¬μ§€ν† λ¦¬μž…λ‹ˆλ‹€.

### 사전 μš”κ΅¬μ‚¬ν•­

+ Git
+ Docker
+ Docker Compose

### μ„€μΉ˜ 단계

#### 1. ν”„λ‘œμ νŠΈ 클둠
> ν”„λ‘œμ νŠΈλ₯Ό 둜컬 ν™˜κ²½μœΌλ‘œ κ°€μ Έμ˜€κΈ° μœ„ν•΄ λ‹€μŒ λͺ…λ Ήμ–΄λ₯Ό μ‹€ν–‰ν•©λ‹ˆλ‹€:
```bash
$ git clone https://github.com/AI-X-4-A1-FINAL/Narrativa_Develop.git
$ cd narrativa-develop
```
#### 2. μ„œλΈŒλͺ¨λ“ˆ μ„€μ •
> ν”„λ‘œμ νŠΈμ˜ μ„œλΈŒλͺ¨λ“ˆμ„ μ΄ˆκΈ°ν™”ν•˜κ³  μ—…λ°μ΄νŠΈν•˜λŠ” 방법은 두 κ°€μ§€κ°€ μžˆμŠ΅λ‹ˆλ‹€:
+ 방법 1: κΈ°λ³Έ 클둠 ν›„ μ„œλΈŒλͺ¨λ“ˆ μ„€μ •
```bash
# μ„œλΈŒλͺ¨λ“ˆ μ΄ˆκΈ°ν™”
$ git submodule init

# μ„œλΈŒλͺ¨λ“ˆ μ—…λ°μ΄νŠΈ
$ git submodule update
```
+ 방법 2: μ„œλΈŒλͺ¨λ“ˆμ„ ν¬ν•¨ν•œ 직접 클둠
```bash
$ git clone --recurse-submodules https://github.com/AI-X-4-A1-FINAL/Narrativa_Develop.git
```

#### 3. ν™˜κ²½ λ³€μˆ˜ μ„€μ •

+ AWS CLI μ„€μ •
```bash
$ aws configure
# AWS Access Key ID μž…λ ₯
# AWS Secret Access Key μž…λ ₯
# Default region name: ap-northeast-2
# Default output format: json
```

+ ν™˜κ²½ λ³€μˆ˜ κ°€μ Έμ˜€κΈ°
```bash
# ν•„μš”ν•œ νŒ¨ν‚€μ§€ μ„€μΉ˜
$ npm install

# S3 λ²„ν‚·μ—μ„œ ν™˜κ²½λ³€μˆ˜ κ°€μ Έμ˜€κΈ°
$ npm run fetch-env
```

#### 4. μ„œλΈŒλͺ¨λ“ˆ 관리
+ μ„œλΈŒλͺ¨λ“ˆ μ—…λ°μ΄νŠΈ
> μ„œλΈŒλͺ¨λ“ˆμ˜ λ‚΄μš©μ΄ λ³€κ²½λ˜μ—ˆμ„ 경우 λ‹€μŒ λͺ…λ Ήμ–΄λ‘œ μ΅œμ‹  변경사항을 κ°€μ Έμ˜¬ 수 μžˆμŠ΅λ‹ˆλ‹€
```bash
# λͺ¨λ“  μ„œλΈŒλͺ¨λ“ˆμ„ μ΅œμ‹  λ²„μ „μœΌλ‘œ μ—…λ°μ΄νŠΈ
$ git submodule update --remote

# λ˜λŠ” 각 μ„œλΈŒλͺ¨λ“ˆμ˜ dev λΈŒλžœμΉ˜μ—μ„œ ν’€
$ git submodule foreach git pull origin dev
```

#### 4. μ„œλΉ„μŠ€ μ‹€ν–‰
```bash
# Docker Compose둜 μ„œλΉ„μŠ€ μ‹€ν–‰
$ docker-compose up --build
```

#### 문제 ν•΄κ²°

#### μ£Όμ˜μ‚¬ν•­

+ AWS CLIκ°€ μ„€μΉ˜λ˜μ–΄ μžˆμ–΄μ•Ό ν•©λ‹ˆλ‹€
+ AWS 자격증λͺ…이 μ˜¬λ°”λ₯΄κ²Œ μ„€μ •λ˜μ–΄ μžˆμ–΄μ•Ό ν•©λ‹ˆλ‹€
+ Parameter Store에 ν•„μš”ν•œ ν™˜κ²½λ³€μˆ˜κ°€ 미리 μ„€μ •λ˜μ–΄ μžˆμ–΄μ•Ό ν•©λ‹ˆλ‹€
+ .env νŒŒμΌμ€ .gitignore에 ν¬ν•¨λ˜μ–΄ μžˆμœΌλ―€λ‘œ git에 μ»€λ°‹λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€

#### 문제 ν•΄κ²°

+ ν™˜κ²½λ³€μˆ˜ κ°€μ Έμ˜€κΈ° μ‹€νŒ¨ μ‹œ: AWS 자격증λͺ… 확인
+ μ„œλΈŒλͺ¨λ“ˆ μ—…λ°μ΄νŠΈ μ‹€νŒ¨ μ‹œ: 둜컬 변경사항 확인
+ Docker λΉŒλ“œ μ‹€νŒ¨ μ‹œ: 둜그 확인 및 ν™˜κ²½λ³€μˆ˜ μ„€μ • 확인

## πŸ—οΈ 브랜치 관리 κ·œμΉ™

### 브랜치 ꡬ쑰

1. **메인 브랜치 (main)**

- ν”„λ‘œλ•μ…˜ 배포용 μ•ˆμ • 브랜치
- PR을 ν†΅ν•΄μ„œλ§Œ 병합 κ°€λŠ₯

2. **개발 브랜치 (dev)**

- 개발 쀑인 κΈ°λŠ₯ 톡합 브랜치
- 배포 μ „ μ΅œμ’… ν…ŒμŠ€νŠΈ μ§„ν–‰

3. **κΈ°λŠ₯ 브랜치 (feat/)**

- μƒˆλ‘œμš΄ κΈ°λŠ₯ 개발용
- λͺ…λͺ…κ·œμΉ™: `feat/{κΈ°λŠ₯λͺ…}`
- 예: `feat/social-login`

4. **κΈ΄κΈ‰ μˆ˜μ • 브랜치 (hotfix/)**
- ν”„λ‘œλ•μ…˜ κΈ΄κΈ‰ 버그 μˆ˜μ •μš©
- λͺ…λͺ…κ·œμΉ™: `hotfix/{이슈번호}`
- 예: `hotfix/critical-bug`

### 브랜치 μ‚¬μš© μ˜ˆμ‹œ

```bash
# κΈ°λŠ₯ 브랜치 생성
git checkout -b feat/social-login

# κΈ΄κΈ‰ μˆ˜μ • 브랜치 생성
git checkout -b hotfix/critical-bug
```

## πŸ—οΈ 디렉토리 ꡬ쑰

```
NARRATIVA-ADMIN/
β”œβ”€β”€ node_modules/ # ν”„λ‘œμ νŠΈ 쒅속성 νŒ¨ν‚€μ§€
β”œβ”€β”€ public/ # 정적 파일 디렉토리
β”œβ”€β”€ src/ # μ†ŒμŠ€ μ½”λ“œ
β”‚ β”œβ”€β”€ assets/ # 이미지, 폰트 λ“± λ¦¬μ†ŒμŠ€ 파일
β”‚ β”œβ”€β”€ components/ # μž¬μ‚¬μš© κ°€λŠ₯ν•œ μ»΄ν¬λ„ŒνŠΈ
β”‚ β”‚ β”œβ”€β”€ Dashboard/ # λŒ€μ‹œλ³΄λ“œ κ΄€λ ¨ μ»΄ν¬λ„ŒνŠΈ
β”‚ β”‚ β”œβ”€β”€ UserManagement/ # νšŒμ› 관리 κ΄€λ ¨ μ»΄ν¬λ„ŒνŠΈ
β”‚ β”‚ └── Notice/ # 곡지사항 κ΄€λ ¨ μ»΄ν¬λ„ŒνŠΈ
β”‚ β”œβ”€β”€ hooks/ # μ»€μŠ€ν…€ ν›…
β”‚ β”œβ”€β”€ pages/ # νŽ˜μ΄μ§€ μ»΄ν¬λ„ŒνŠΈ
β”‚ β”œβ”€β”€ services/ # API 및 μœ ν‹Έλ¦¬ν‹° ν•¨μˆ˜
β”‚ └── types/ # TypeScript νƒ€μž… μ •μ˜
β”œβ”€β”€ .gitignore # Git λ¬΄μ‹œ 파일 λͺ©λ‘
β”œβ”€β”€ LICENSE # λΌμ΄μ„ΌμŠ€ 정보
β”œβ”€β”€ package.json # ν”„λ‘œμ νŠΈ μ„€μ • 및 쒅속성
β”œβ”€β”€ README.md # ν”„λ‘œμ νŠΈ λ¬Έμ„œ
β”œβ”€β”€ tailwind.config.js # Tailwind CSS μ„€μ •
└── tsconfig.json # TypeScript μ„€μ •
```

## πŸ—οΈ νŒ€ 정보

### **Team Member**


st

## πŸ—οΈ 문의 및 κΈ°μ—¬

ν”„λ‘œμ νŠΈμ— λŒ€ν•œ λ¬Έμ˜μ‚¬ν•­μ΄λ‚˜ κ°œμ„  μ œμ•ˆμ€ 이슈 탭에 λ“±λ‘ν•΄μ£Όμ„Έμš”.

κΈ°μ—¬λ₯Ό μ›ν•˜μ‹œλŠ” 뢄은 Fork & Pull Requestλ₯Ό 톡해 μ°Έμ—¬ν•΄μ£Όμ‹œλ©΄ κ°μ‚¬ν•˜κ² μŠ΅λ‹ˆλ‹€.

## πŸ—οΈ λΌμ΄μ„ μŠ€

이 ν”„λ‘œμ νŠΈλŠ” [MIT λΌμ΄μ„ μŠ€](LICENSE)λ₯Ό λ”°λ¦…λ‹ˆλ‹€.




![footer](https://github.com/user-attachments/assets/c30abbd9-8e89-4a4e-8823-33fe0cf843c9)