Work was done in the development branch and merged 4 times into master branch, using git merge –no-ff, so that new commit was created, instead of fast forwarding master branch. When viewed in github history such commits show combined changes from multiple commits, while other commits show incremental changes done in the development branch.
For easier viewing I have added a comment and tags on the 4 merge commits. Tags are merged_development_1, merged_development_2, merged_development_3 and merged_development_4, based on their order(1 is first commit, 4 is the last commit).
Project directory: src\main\resources\postman contains the postman collection with all the endpoints, that was used during development.
I have containerized the service, both by running docker commands separately, as well as using docker compose.
Before running, the application was packaged using maven command in project root folder
./mvnw package
From project root command following commands were used 1.) Created a custom docker image
docker build -f src/main/docker/Dockerfile.jvm -t quarkus/movies-actors-jvm .
2.) Used command to verify that image is present locally
docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
quarkus/movies-actors-jvm latest ac8648d7f0b6 2 minutes ago 448MB
3.) Created and started docker container with custom name in detached mode, with such port mapping, so that service is present at port 8080:
docker run --name movies-actors -i -d --rm -p 8080:8080 quarkus/movies-actors-jvm
4.) Checked than container is running by listing running containers:
docker ps
CONTAINER ID IMAGE COMMAND CREATED
8e83e819fd2c quarkus/movies-actors-jvm "/opt/jboss/containe…" 6 seconds ago
STATUS PORTS NAMES
Up 5 seconds 0.0.0.0:8080->8080/tcp, 8443/tcp movies-actors
5.) Used postman to test that application endpoints work correctly.
1.) First I removed the old image from before to check that image will be correctly built using docker compose:
docker image rm quarkus/movies-actors-jvm
2.) Run docker compose from directory where docker-compose.yml is located in detached mode
docker-compose up -d
3.) Checked than container is running by listing running containers:
docker ps
docker ps
CONTAINER ID IMAGE COMMAND CREATED
83a1cea51387 quarkus/movies-actors-jvm "/opt/jboss/containe…" 10 seconds ago
STATUS PORTS NAMES
Up 9 seconds 0.0.0.0:8080->8080/tcp, 8443/tcp movies-actors
4.) Used postman again to test that application endpoints work correctly.