This repository is a Dockerized and somewhat modified version of the following app: vavramovski/videosonik-new.
Huge thanks to vavramovski for letting me use this app for my Ansible/Docker project.
- All package and deploy operations, as well as server setup, are done using Ansible playbooks.
- Added the Dockerfile where I use multi-stage build to first package this app using Maven based image, and then run it in a lightweight, OpenJDK based Docker container.
- During deploy time, the app reads the admin account credentials and database connection properties from an Ansible vault.
- During deploy time, the application properties are changed by Ansible to configure the app to use the production database, using this Jinja2 template.
- During deploy time, multiple containers of this app are created, alongiside a load balancer that distributes the traffic between them, using a Docker compose file.