์ด๋ฅธ๋ค์ ๋์ฌ์ ์ฐพ์๋ผ!
๋ฐฉํ์์ ๋ก ๊ทธ๋ฆฌ๋ ๊ทธ๋ฆผ์ผ๊ธฐ๋ฅผ G-Diary์ ๊ทธ๋ฆฌ์!
์ผ๊ธฐ์ฅ๊ณผ ๊ทธ๋ฆผ์ ๋ด๊ฐ ์ ๊ณตํ ๊ฒ
์คํ ๋ฆฌ๋ ๋๊ฐ ์งค๋?
์ผ๊ธฐ๋ฅผ ์์ฑํด ์ ์ฅํด๋ณด์ธ์
์ผ๊ธฐ์ฅ์์ ํค์๋๋ฅผ ์ถ์ถํด ๊ทธ๋ฆผ์ผ๊ธฐ์ ์ฌ์ฉํ ๊ทธ๋ฆผ์ ์ ๊ณตํฉ๋๋ค ์ด ์ธ์์ ๋จ ํ๋๋ฐ์ ์๋ ๊ทธ๋ฆผ ์ผ๊ธฐ๋ฅผ ์์ฑํด๋ณด์ธ์ ๐ www.gdiary.org ๐ medium |
์ผ๊ธฐ๋ฅผ ์์ฑํ๊ณ <๊ทธ๋ฆผ๊ฐ์ ธ์ค๊ธฐ> ๋ฅผ ๋๋ฆ
๋๋ค. AI ๋ก ํค์๋๋ฅผ ์ถ์ถํ์ฌ ์ด๋ฏธ์ง๋ฅผ ์ถ๋ ฅ๋ฉ๋๋ค.
๊ทธ๋ฆผ์ ์ ํํ๊ฑฐ๋ <๊ทธ๋ฆผ๊ทธ๋ฆฌ๊ธฐ>๋ก ์ง์ ๊ทธ๋ฆด ์ ์์ต๋๋ค.
- Frontend: React, Zustand
- Backend : Django, Django-Rest-FrameWork
- Web Server: Nginx,
- Asynchronous: Celery, Rabbitmq
- WSGI: Gunicorn
- Database: AWS RDS MySQL
- AI : KoNLPy
- Deployment: Docker, AWS EC2, AWS S3 bucket
- API Test : Postman
- API Documentation : Swagger
- Monitoring : prometheus, grafana
- Others: Github, Notion, Zoom, Slack, Figma
- api/v1/auth : ์ฌ์ฉ์ ์ ๋ณด ํ์ธ, ๋ก๊ทธ์ธ, ๋ก๊ทธ์์
- api/v1/users : ์ฌ์ฉ์ ์ปค๋ฒ ์ด๋ฏธ์ง ๋ณ๊ฒฝ
- api/v1/results : ๊ฒฐ๊ณผ ํค์๋ ๋ณ ์ด๋ฏธ์ง ์กฐํ
- api/v1/text/ : ์ผ๊ธฐ๋ด์ฉ ํค์๋ ์ถ์ถ (AI)
- api/v1/join : ํ์๊ฐ์
- api/v1/diaries : ์ผ๊ธฐ ๋ชฉ๋ก ์กฐํ, ๋ฑ๋ก, ์กฐํ
node exporter | Django |
---|---|
git clone https://github.com/2023-SV-winter-bootcamp-G-Diary/G-Diary.git
Path: G-Diary/backend/config/my_settings.py
Django secret key & MySQL ํ๊ฒฝ๋ณ์ & S3 bucket
from pathlib import Path
BASE_DIR = Path(__file__).resolve().parent.parent
MY_SECRET = {
"SECRET_KEY" : ''
}
MY_DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME' : '',
'USER' : '',
'PASSWORD' : '',
'HOST': '',
'PORT': '3306',
'OPTIONS':{
'init_command' : "SET sql_mode='STRICT_TRANS_TABLES'"
}
}
}
MY_AWS_ACCESS_KEY_ID = {
"AWS_ACCESS_KEY_ID" :''
}
MY_AWS_ACCESS_ACCESS_KEY = {
"AWS_SECRET_ACCESS_KEY" : ""
}
MY_STORAGE_BUCKET_NAME = {
"BUCKET_NAME" : ""
}
Path: /G-Diary/backend/.env MySQL container ํ๊ฒฝ ๋ณ์ & RabbitMQ ํ๊ฒฝ๋ณ์
DEBUG=False
MYSQL_DATABASE=
MYSQL_ROOT_PASSWORD=
MYSQL_PORT=3306
TZ=Asia/Seoul
RABBITMQ_HOST=
RABBITMQ_USER=
RABBITMQ_PASSWORD=
RABBITMQ_VHOST=
Path: /G-Diary/frontend/.env.local
์นด์นด์คํก ๊ณต์ ํ๊ธฐ ํ๊ฒฝ๋ณ์ (ํ์ฌ ๋ก์ปฌ์์๋ง ๊ฐ๋ฅ)
REACT_APP_KAKAO_KEY=''
Path: /G-Diary/.env
RabbitMQ ํ๊ฒฝ๋ณ์
RABBITMQ_HOST=
RABBITMQ_USER=
RABBITMQ_PASSWORD=
RABBITMQ_VHOST=
docker-compose -f docker-compose.prod.yml up --build
๋ฐํฌ๊ฒฝ | ์ฅ์๋ น | ์์์ค | ์ด๋ฏผ์ง | ์๊ด์ | ์ค์์ธ |
---|---|---|---|---|---|
Leader, Backend, DevOps | Backend, AI | Backend | Frontend, DevOps | Frontend | Frontend |