https://github.com/helidon-sockshop/orders
Helidon Sock Shop: Orders Service
https://github.com/helidon-sockshop/orders
coherence example helidon kubernetes microservice
Last synced: 11 months ago
JSON representation
Helidon Sock Shop: Orders Service
- Host: GitHub
- URL: https://github.com/helidon-sockshop/orders
- Owner: helidon-sockshop
- License: upl-1.0
- Created: 2020-01-15T03:43:56.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2022-06-22T20:05:50.000Z (over 3 years ago)
- Last Synced: 2024-07-29T18:04:25.255Z (over 1 year ago)
- Topics: coherence, example, helidon, kubernetes, microservice
- Language: Java
- Homepage:
- Size: 262 KB
- Stars: 2
- Watchers: 9
- Forks: 3
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Orders Service
The Orders Service is implemented as a multi-module project containing the following modules:
1. **[orders-core](./orders-core)** contains the bulk of the service implementation, including
domain model, the REST service itself, as well as the data repository abstraction and its
in-memory implementation;
2. **[orders-coherence](./orders-coherence)** contains the data repository implementation for
Coherence backend
3. **[orders-mongo](./orders-mongo)** contains the data repository implementation for MongoDB
backend
4. **[orders-mysql](./orders-mysql)** contains the data repository implementation for MySQL
backend (using JPA)
5. **[orders-redis](./orders-redis)** contains the data repository implementation for Redis
backend (using Redisson client)
## API
The service exposes REST API on port 7001.
TBD (add OpenAPI support/link)
## Building the service
In order to build all the modules and create Docker images for the service, simply run the
following commands inside the top-level `orders` directory:
```bash
$ mvn clean install
$ mvn package -Pdocker -DskipTests
```
The first command will build all the modules, run unit and integration tests, and install the
artifacts that need to be included into the Docker images into the local Maven repo.
The second command will then package those artifacts, and all of their dependencies, into
the local Docker image with the same names as the corresponding module (one image per module).
You can then manually push generated image to a Docker repository of your choice in order
to make it available to other environments.
Alternatively, you can build and push the image directly to a remote Docker repository by
running the following command instead:
```bash
$ mvn package -Pdocker -DskipTests -Ddocker.repo= -Djib.goal=build
```
You should replace `` in the command above with the name of the
Docker repository that you can push images to.
## Running the service
Please refer to documentation for the individual modules above to find out how to run
different implementations of this service, including the backends they require, for local
testing.
To learn how to run the service in Kubernetes, as part of a larger Sock Shop application,
please refer to the [main documentation page](../sockshop/README.md).
## License
The Universal Permissive License (UPL), Version 1.0