Skip to content

mertbahardogan/netflixclone-microservices-spring-intern

Repository files navigation

Getting Started with My Microservices Arch.

Table of Contents
  1. Requirements
  2. Prerequisites
  3. Getting Started
  4. Port List
  5. Built With
  6. Contributing
  7. Contact

Requirements

  1. Java JDK 11
  2. Docker Desktop 3.5.1
  3. IDE (IntelliJ 2021.1.3)
  4. PostgreSQL 13
  5. Apache Maven 3.8.1

Prerequisites

1-Run the following command in main project in terminal:

mvn clean install

This command Dockerize all microservices automatically if you have dockerize code in pom.xml in services or you can use Dockerfile.

2-Run the following commands in Config Server Repository module:

  git init
  git remote add origin https://github.com/mertbahardogan/spring-cloud-config-server-repository
  git pull https://github.com/mertbahardogan/spring-cloud-config-server-repository main

3-Run the following commands in docker-compose folder in terminal:

docker-compose up

docker run -d -p 9411:9411 openzipkin/zipkin

4-Send the following files to PostgreSQL.

BackupNetflix and DataNetflix Files.

After that; You can reach every service. Look at the Port Lists.

5- Choice time:

Option 1:

If you want to run in docker, just do the following items:

 docker-compose -f services.yml up

Services will be running in a few minutes.

Option 2:

If you want to debug, run the following in order:

  1. config-server
  2. eureka-server
  3. gateway-server
  4. zipkin-server
  5. After that you can run which service you want. But don't forget dependencies.

Port List``

Add Index Pattern in Kibana Discover page:

 spring-boot-elk-logs-YYYY.MM.dd 

Built With

Technologies

  1. Java
  2. Spring Boot
  3. Spring Cloud (Eureka & Config Server)
  4. Docker and Docker Compose
  5. Apache Kafka
  6. PostgreSQL
  7. Api Gateway
  8. ELK Stack (Elascticsearch-Logstash-Kibana)
  9. Keycloak
  10. Prometheus & Grafana
  11. Zipkin
  12. Swagger

Architectures

  1. Microservices Architecture
  2. Layered Architecture

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Contact

Would you like to any notify or suggest something to me?

mbahardogan4@gmail.com

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages