This is a conceptual representation of the Twitter (X) application created for learning puproses for students in Algonquin College for course CST8277 "Enterprise Application Programming". The goal of this project is to demonstrate pros and cons of the microservice architecture in action and let student create the same application by themselves in 4 major steps:
- General design
- Data model
- Impelementation
- Securing applications
To build the project, follow the steps below.
- Install prerequisites
- JDK 17 with
JAVA_HOMEpointing to the right version - Gradle 8.7
- Docker
- установить minikube по инструкции https://kubernetes.io/ru/docs/tasks/tools/install-minikube/
-
Для работы kubernetes потребуется загрузка на докер хаб. Для этого нужно зарегистрироваться на https://hub.docker.com и с помощью команды docker login авторизоваться локально.
-
Выполните
cp .env.local .env
- Установите свои значения указанных переменных в .env
GRADLE_PATH=
DOCKER_HUB_LOGIN=
- Build java apps
bin/build
- Start db
docker-compose up
- Create database schema
bin/schema
- Создайте кластер миникуба
bin/kube_setup
-
Выполните minikube ip
-
Пропишите в .env
UMS_APP=http://<ip из прошлого шага>:32000
- Выполните для развертывания приложения с настроенным .env
bin/kube_deploy
curl -v http://`minikube ip`:32001/messages/subscriber/70a64b54-43c3-4c18-bbec-64590ff7e0cc
This repository is licensed under the BSD 2-Clause License.