Skip to content

seojeewon/tori-backend

 
 

Repository files navigation

토리-Backend

세상에 없던 나만의 동화책, 토리의 백엔드 개발 레포지토리입니다.

이화여자대학교 2023 캡스톤디자인과창업프로젝트
개발기간: 2023.06.09 - 2023.12


배포 주소

개발 버전: https://tori-fairytale.vercel.app/
백엔드: www.bemystory.store


시스템

img.png

web server와 Amazon RDS, Amazon S3를 맡아 개발 진행


데이터베이스

AWS RDS의 MariaDB


Open sources

  • Spring Framework
  • Redis
  • MariaDB
  • nginx

시작 가이드

Requirements

For building and running the application you need:

  • AWS EC2 배포
    • java 17 설치
    • Redis 3.0.504 설치
      $ cd /
      $ mkdir deploy
      $ vi application.yml
      
    • application.yml 파일에 database, jpa, redis, s3, jwt 설정
    • nginx 설치
    • deploy.sh 스크립트를 통해 clone repository 및 빌드
      echo "> remove repository"
      sudo rm -rf be-my-story-backend
      
      echo "> git clone"
      git clone https://github.com/6garlics/be-my-story-backend
      
      echo "> application.yml 이동"
      cd /deploy
      sudo rm -rf nohup.out
      sudo mkdir /deploy/be-my-story-backend/src/main/resources
      sudo cp application.yml ./be-my-story-backend/src/main/resources
      
      echo "> build"
      cd /deploy/be-my-story-backend/
      sudo chmod +x gradlew
      ./gradlew clean build
      
      echo "> redis 재실행"
      REDIS_PID=$(ps -ef | grep redis-server | awk '{print $2}')
      echo "$REDIS_PID"
      if [ -z ${REDIS_PID} ]; then
      echo "> 현재 구동중인 redis가 없습니다."
      else
      echo "> sudo kill -9 $REDIS_PID"
      sudo kill -9 $REDIS_PID
      fi
      echo "> redis background 실행"
      redis-server --daemonize yes
      
      echo "> 현재 구동중인 애플리케이션 확인"
      CURRENT_PID=$(ps -ef | grep java | grep bemystory | awk '{print $2}')
      echo "$CURRENT_PID"
      if [ -z ${CURRENT_PID} ]; then
      echo "> 현재 구동중인 애플리케이션이 없으므로 종료하지 않습니다."
      else
      echo "> sudo kill -9 $CURRENT_PID"
      sudo kill -9 $CURRENT_PID
      #       sleep 10
      fi
      
      echo "> 배포"
      cd build/libs
      nohup java -jar *-SNAPSHOT.jar > /deploy/nohup.out 2>&1 &
      

About Code

/controller : Presentation Layer
/service : Application Layer
/repository : Data Access Layer
/config : 환경 설정
/domain : Entities of Database
/dto : Data Transfer Object
/exception : 예외처리
/utils : JWT utilization

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%