Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/beaniejoy/dongne-cafe-api
☕️ kotlin & spring boot application (toy project) / siren order service for local cafe
https://github.com/beaniejoy/dongne-cafe-api
flyway jenkins kotlin spring-boot spring-data-jpa spring-security
Last synced: 1 day ago
JSON representation
☕️ kotlin & spring boot application (toy project) / siren order service for local cafe
- Host: GitHub
- URL: https://github.com/beaniejoy/dongne-cafe-api
- Owner: beaniejoy
- Created: 2021-09-07T17:23:39.000Z (about 3 years ago)
- Default Branch: develop
- Last Pushed: 2024-04-21T13:08:04.000Z (7 months ago)
- Last Synced: 2024-04-21T15:48:53.685Z (7 months ago)
- Topics: flyway, jenkins, kotlin, spring-boot, spring-data-jpa, spring-security
- Language: Kotlin
- Homepage:
- Size: 821 KB
- Stars: 2
- Watchers: 2
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 동네 카페 전용 사이렌 오더 서비스(중단)
(개인프로젝트로 인해 중단)
코틀린 기반의 Spring Boot로 만들어보는 개인 프로젝트
(Web Application with Kotlin-based Spring Boot)
## :pushpin: Specification
- Language
- java 17
- kotlin 1.8.22
- Framework
- Spring Boot 3.1.5
- DB
- MySQL 8.0.32
- Flyway(migration)
- CI/CD
- Jenkins
- Ansible ([playbook and scripts repo](https://github.com/beaniejoy/ansible-deploy-script))
- Infra
- Redis(memory cache)
- Vault
- Cloud Server
- AWS Lightsail(Amazon Linux2)
- Raspberry Pi 4(a tiny physical server)
- Front
- Vue 3 ([dongne-cafe-web 프론트 개발](https://github.com/beaniejoy/dongne-cafe-web))
## :pushpin: Multi Modules
- `app`
- `account-api`
- 회원가입, 인증 관련 내용
- `service-api`
- 카페 관련 도메인 내용(추후 주문, 결제 적용 계획)
- `common`
- 각 app이 사용하는 공통 내용 관리
- error response, filter(security, logging)
- `db`
- db datasource, jpa 설정 관리
- repository 관리
- `domain`
- 전반적인 비즈니스 로직 관리
- Entity 관리
## :pushpin: Setting
### 💽 로컬 DB 구성 (docker)
- local에 DB(MySQL)용 docker container run
- application은 IDE에서 실행 (default profile: `local`)
```bash
$ docker run --name mysql-server -e MYSQL_ROOT_PASSWORD=beaniejoy -d -p 3306:3306 mysql:8.0.21
```### 💽 DB Migration (with flyway)
- [DB migration directory README](https://github.com/beaniejoy/dongne-cafe-api/blob/main/db/README.md)### 💽 docker compose 실행(수정 작업 진행중)
- docker compose를 이용한 nginx, DB(MySQL), application 한꺼번에 실행하는 경우
```bash
$ docker-compose up --build
```### 🪄 Kotlin Lint
```bash
$ ./gradlew addKtlintCheckGitPreCommitHook
```