λͺ©μ°¨
KT-Libraryλ λ§μ΄ν¬λ‘μλΉμ€ μν€ν μ²λ‘ ꡬμ±λ λμ κ΄λ¦¬ μμ€ν μ λλ€. μ΄ μ μ₯μλ λ°±μλ λ§μ΄ν¬λ‘μλΉμ€, API κ²μ΄νΈμ¨μ΄, νλ‘ νΈμλλ₯Ό ν¬ν¨νλ λͺ¨λ Έλ ν¬ ννλ‘ κ΄λ¦¬λ©λλ€.
KT-Libraryλ λ€μκ³Ό κ°μ μ£Όμ μλΉμ€λ₯Ό μ 곡ν©λλ€:
- λ°±μλ λ§μ΄ν¬λ‘μλΉμ€:
point,author,customer,manuscript,ai,platformλ± λμ κ΄λ¦¬ μμ€ν μ ν΅μ¬ λΉμ¦λμ€ λ‘μ§μ λ΄λΉν©λλ€. - API κ²μ΄νΈμ¨μ΄ (Spring Gateway): λͺ¨λ λ§μ΄ν¬λ‘μλΉμ€λ‘μ μμ²μ λΌμ°ν νκ³ , κ³΅ν΅ κΈ°λ₯μ μ²λ¦¬ν©λλ€.
- νλ‘ νΈμλ: React κΈ°λ°μ μ¬μ©μ μΈν°νμ΄μ€λ₯Ό μ 곡νμ¬ λμ κ²μ, κ΄λ¦¬ λ±μ κΈ°λ₯μ μνν©λλ€.
| μ΄μ±ν | κΉλ―Όμ | λ°μμ° | λ°°μμ | μ₯μ€ν | μ‘°μΉλΉ | |
|---|---|---|---|---|---|---|
| μν | μ‘°μ₯, μκ° κ΄λ¦¬ μλΉμ€ κ°λ° | AI μλΉμ€ κ°λ° | νλ«νΌ μλΉμ€ κ°λ° | ν¬μΈνΈ μλΉμ€ κ°λ° | μ§ν κ΄λ¦¬ μλΉμ€ κ°λ° | κ³ κ° κ΄λ¦¬ μλΉμ€ κ°λ° |
| p.plue1881@gmail.com | minsue9608@naver.com | gumza9go@gmail.com | bsj9278@gmail.com | kalina01255@naver.com | benscience@naver.com | |
| GitHub | https://github.com/NextrPlue | https://github.com/K-Minsu | https://github.com/sorasol9 | https://github.com/BaeSJ1 | https://github.com/angrynison | https://github.com/changeme4585 |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
- λμ κ΄λ¦¬: λμ μ 보 λ±λ‘, μ‘°ν, μμ , μμ
- μ¬μ©μ/μ μ κ΄λ¦¬: μ¬μ©μ λ° μ μ μ 보 κ΄λ¦¬
- ν¬μΈνΈ/μκ³ κ΄λ¦¬: ν¬μΈνΈ λ° μκ³ κ΄λ ¨ κΈ°λ₯
- AI μλΉμ€ μ°λ: (AI μλΉμ€μ ꡬ체μ μΈ κΈ°λ₯μ΄ μλ€λ©΄ μΆκ°)
- API κ²μ΄νΈμ¨μ΄: μλΉμ€ λΌμ°ν λ° ν΅ν© API μ 곡
- νλ‘ νΈμλ: μ¬μ©μ μΉνμ μΈ μΉ μΈν°νμ΄μ€
API κ²μ΄νΈμ¨μ΄λ 8088 ν¬νΈμμ μ€νλλ©°, httpie λλ λ€λ₯Έ API ν΄λΌμ΄μΈνΈλ₯Ό μ¬μ©νμ¬ ν
μ€νΈν μ μμ΅λλ€.
- point
http :8088/points id="id" point="point" createAt="createAt" updateAt="updateAt" customerId="customerId"
- author
http :8088/authors id="id" email="email" name="name" introduction="introduction" isApproved="isApproved" createdAt="createdAt" updatedAt="updatedAt"
- customer
http :8088/customers id="id" name="name" email="email" isKtUser="isKTUser" createdAt="createdAt" updatedAt="updatedAt" http :8088/subsciptions id="id" isValid="isValid" startDate="startDate" endDate="endDate" createdAt="createdAt" updatedAt="updatedAt"
- manuscript
http :8088/manuscripts id="id" manuscriptTitle="manuscriptTitle" manuscriptContent="manuscriptContent" authorId="authorId" authorName="authorName" authorIntroduction="authorIntroduction" createdAt="createdAt" updatedAt="updatedAt"
- ai
http :8088/books id="id" summary="summary" coverUrl="coverUrl" bookUrl="bookUrl" createdAt="createdAt" updatedAt="updatedAt" manuscriptTitle="manuscriptTitle" manuscriptContent="manuscriptContent" authorId="authorID" authorName="authorName" introduction="introduction" category="category" price="price"
- platform
http :8088/bookShelves id="id" title="title" category="category" isBestSeller="isBestSeller" viewCount="viewCount" summary="summary" coverUrl="coverUrl" fileUrl="fileUrl" authorId="authorId" price="price" authorName="authorName" introduction="introduction"
μλΉμ€λ₯Ό μ€ννκΈ° μ μ λ€μ λꡬλ€μ΄ μ€μΉλμ΄ μλμ§ νμΈνμμμ€:
- Docker λ° Docker Compose
- Node.js (Dockerλ₯Ό μ¬μ©νμ§ μκ³ νλ‘ νΈμλ κ°λ°/λΉλ μ)
- Maven (Dockerλ₯Ό μ¬μ©νμ§ μκ³ λ°±μλ κ°λ°/λΉλ μ)
λͺ¨λ λ§μ΄ν¬λ‘μλΉμ€(λ°±μλ, κ²μ΄νΈμ¨μ΄, νλ‘ νΈμλ) λ° Kafkaλ₯Ό μμνλ €λ©΄:
-
Docker μ΄λ―Έμ§ λΉλ λ° μλΉμ€ μμ:
docker-compose -f build-docker-compose.yml up --build
μ΄ λͺ λ Ήμ΄λ νμν λͺ¨λ Docker μ΄λ―Έμ§λ₯Ό λΉλν λ€μ
build-docker-compose.ymlμ μ μλ μλΉμ€λ₯Ό μμν©λλ€. -
μ ν리μΌμ΄μ μ μ: λͺ¨λ μλΉμ€κ° μ€νλλ©΄ λΈλΌμ°μ μμ νλ‘ νΈμλ μ ν리μΌμ΄μ μ μ μν μ μμ΅λλ€:
http://localhost:8088
Docker Compose μΈλΆμμ κ°λ° λλ λλ²κΉ μ μν΄ κ°λ³ μλΉμ€λ₯Ό μ€νν΄μΌ νλ κ²½μ°:
κ° λ§μ΄ν¬λ‘μλΉμ€ λλ ν 리 λ΄μ README.md νμΌμ μ°Έμ‘°νμ¬ νΉμ μ§μΉ¨μ νμΈνμμμ€:
pointauthorcustomermanuscriptaiplatform
cd gateway
mvn spring-boot:runcd frontend
npm install
npm startλ€μ μ νΈλ¦¬ν°λ κ°λ° λ° μ΄μμ μ μ©ν μ μμ΅λλ€:
-
httpie (curl / POSTMAN λ체 λꡬ) λ° λ€νΈμν¬ μ νΈλ¦¬ν°
sudo apt-get update sudo apt-get install net-tools sudo apt install iputils-ping pip install httpie
-
kubernetes μ νΈλ¦¬ν° (kubectl)
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl -
aws cli (aws)
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" unzip awscliv2.zip sudo ./aws/install
-
eksctl
curl --silent --location "https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_$(uname -s)_amd64.tar.gz" | tar xz -C /tmp sudo mv /tmp/eksctl /usr/local/bin
KT-Library νλ‘μ νΈλ λ€μκ³Ό κ°μ κΈ°μ μ€νμ νμ©ν©λλ€:
- μΈμ΄: Java
- νλ μμν¬: Spring Boot
- λΉλ λꡬ: Maven
- λ©μμ§: Kafka
- νλ μμν¬: Spring Cloud Gateway
- νλ μμν¬/λΌμ΄λΈλ¬λ¦¬: React
- ν¨ν€μ§ λ§€λμ : npm
- 컨ν μ΄λ: Docker
- μ€μΌμ€νΈλ μ΄μ : Kubernetes (AKS), Docker Compose
- Azure Pipelines





