Spring Petclinic Cloud

Fork of the Spring Cloud Microservices project packaged to be deployed on several Cloud platforms: Kubernetes and Cloud Foundry

Blockchain & Cloud ComputingJavaApache-2.0

Abstract

Spring Petclinic Cloud is an open-source Blockchain & Cloud Computing project. Fork of the Spring Cloud Microservices project packaged to be deployed on several Cloud platforms: Kubernetes and Cloud Foundry. See the presentation of the Spring Petclinic Framework version. It is built using Java, Docker, Kubernetes. The complete source code is publicly available on GitHub under the Apache License 2.0, making it a useful reference for students building a Blockchain & Cloud Computing mini project or final-year project.

1. Introduction

See the presentation of the Spring Petclinic Framework version

A blog bost introducing the Spring Petclinic Microsevices (french language)

Contine with creating the services and deploying the application's microservices. A sample is available at scripts/deployToCloudFoundry.sh. Note that some of the services' plans may be different in your environment, so please review before executing. For example, you want want to fork the spring-petclinic-cloud-config repository if you want to make changes to the configuration.

2. Objective

Fork of the Spring Cloud Microservices project packaged to be deployed on several Cloud platforms: Kubernetes and Cloud Foundry

This project demonstrates how Java, Docker, Kubernetes can be applied to a real-world Blockchain & Cloud Computing problem.

4. Technology Stack

JavaDockerKubernetes

5. System Requirements

General requirements for this technology stack — check the README for exact versions.

  • JDK 11 or later
  • Maven / Gradle
  • IntelliJ IDEA, Eclipse or Android Studio
  • Git (to clone the repository)

6. Installation & Setup

git clone https://github.com/spring-petclinic/spring-petclinic-cloud.git
cd spring-petclinic-cloud
./scripts/deployToKubernetes.sh
✗ kubectl get pods -n spring-petclinic
NAME                                 READY   STATUS    RESTARTS   AGE
api-gateway-585fff448f-q45jc         1/1     Running   0          4m20s
customers-db-mysql-0                 1/1     Running   0          11m
customers-service-5d7d686654-kpcmx   1/1     Running   0          4m19s
vets-db-mysql-0                      1/1     Running   0          11m
vets-service-85cb8677df-l5xpj        1/1     Running   0          4m2s
visits-db-mysql-0                    1/1     Running   0          11m
visits-service-654fffbcc7-zj2jw      1/1     Running   0          4m2s
wavefront-proxy-dfbd4b695-fdd6t      1/1     Running   0          14m
✗ kubectl get svc -n spring-petclinic api-gateway
NAME          TYPE           CLUSTER-IP    EXTERNAL-IP      PORT(S)        AGE
api-gateway   LoadBalancer   10.7.250.24   34.1.2.22   80:32675/TCP   18m

Full setup instructions are in the project README.

7. Future Enhancements

Suggested extensions you can add to make this your own project.

  • Add a CI/CD pipeline with GitHub Actions
  • Deploy to a public test network or cloud free tier
  • Add monitoring and cost alerts

8. Viva / Review Questions

Common questions examiners ask for projects in this domain.

  1. Why does this problem need a blockchain or cloud-native design?
  2. Explain the smart contract / infrastructure components and how they interact.
  3. How are gas costs or cloud costs kept under control?
  4. How is the system secured (keys, IAM, access control)?
  5. How would the solution scale to many more users?

9. Source Code & License

This project is developed by spring-petclinic and published on GitHub under the Apache License 2.0. Please follow the license terms and credit the original author when you use or modify this code.

Want to build this as your internship project?

Work on a Blockchain & Cloud Computing project like this with mentor guidance, weekly reviews and an internship certificate from Training Trains, Erode — online or offline.

Apply for Blockchain & Cloud Computing Internship