Articles App
A simple application for exploring multi-tenancy concepts.
Table of Contents
Summary
Application gives the users a personal space for writing articles (quite simple CRUD application). The application however is available from three different domains, each integrated with different Keycloak realm. This creates a multi-tenant environment, where each tenant has its own set of users and the application resources.
Motivation
Motivation for this project was to prepare an environment of multiple applications integrated with multiple Keycloak realms. Such configured Keycloak, with proper OAuth 2.0 / OIDC clients and predefined users is enough of a value for eventual use in other personal projects.
Application setup
Application consists of several Docker services, coordinated to work in a single system. Such
services consists of articles-backend
(backed by MongoDB)
and articles-webapp
. IAM and multi-tenancy is implemented using
Keycloak (backed by MariaDB database).
An example setup using docker-compose.yaml
is available in README.md
. See
also the default set of users to authenticate in the same document.
Technologies
- Software Frameworks
- Spring Boot version
2.5.5
. - Angular version
12.2.5
.
- Spring Boot version
- Integrations
Project repositories
articles-app
, which holds Docker environment setup.articles-backend
, which holds backend application.articles-webapp
, which holds frontend application.