Prerequisites:
- Java 17
- Apache Maven
- Docker
- Optional Postman
If you have Docker installed, grab a PostgreSQL image from Docker Hub and run the image.
docker pull bitnami/postgresql:12
docker run --name postgresql -e POSTGRESQL_PASSWORD=password123 -e POSTGRES_DB=spring -p 5432:5432 bitnami/postgresql:12
Or else, grab the app image via
docker pull ksabrwsk/reactive-talk-202012:1.0.0
The PostgreSQL flyway database schemas are located under
reactive-talk-202012/src/main/resources/db/migration
Application properties can be configured in
reactive-talk-202012/src/main/resources/application.properties
Type
mvn package
mvn spring-boot:run
to build and run the application on your local environment.
To run the app as a Docker Container type the following commands to build an run the image:
docker build ./ -t reactive-talk-202012-kotlin
docker-compose up --force-recreate
Use curl, httpie etc. to call the HTTP Endpoints, or use Postman, a collection file is located under
reactive-talk-202012.postman_collection.json
Themes:
- Spring Webflux
- Router Functions/Handler Functions
- R2DBC Database Connectivity
- Unit Testing
- Integration Testing with Testcontainers
- Docker build/compose