Skip to content

Simple infrastructure for running the entire OS2agora solution

Notifications You must be signed in to change notification settings

OS2agora/OS2agora-Infrastructure

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OS2agora-Infrastructure

This repository contains the infrastructure setup for running and developing the different parts of OS2agora using Docker.

The repository is designed to make it easy to test, run, and debug individual components or the full system during development.

The frontend for employees is located in OS2agora-Internal-UI
The frontend for the public is located in OS2agora-Public-UI The Api and backend is located in OS2agora-API

Technical documentation is located in OS2agora-docs

Required Tools

  • Docker
  • Docker-compose (is included in Docker for Windows)

Getting Started

To start a given part of the solution, do the following steps:

  1. Build the required Docker Images
  2. Add the required secret files in _config/secrets
  3. Navigate to the relevant folder and run the following command:
docker-compose -f docker-compose.yml --env-file .env up -d

NOTE: You may start the solution as is, but need to have access to an IdP to login as employee or citizen. The backend should further be configured to use that specific IdP.

To stop the solution, use the following command:

docker-compose -f docker-compose.yml --env-file .env stop

Configuration

Each part of the solution has a dedicated .env.<solution> file, used for configurations - eg. .env.api. Configuration details for each core component are documented in that component’s own repository. This repository only provides the infrastructure needed to run those components, not their internal configuration instructions.

When running parts of the solution through an IDE or similar, make sure it has the correct configurations, allowing communication with the parts running in Docker.

Building Docker Images

To build the required images, follow these steps:

  1. Navigate to the relevant repository:
  2. From the root, navigate to /docker
  3. Run the following command:
docker-compose -f docker-compose.build.yml build

Folders

Base

Docker Compose configurations that start the base services required to run the backend from an IDE.

  • Required secrets:
    • db_name
    • db_username
    • db_password
    • db_root_password

Frontend

Docker Compose configurations that start the necessary services (e.g., database and frontend apps), allowing the backend to be run and debugged from an IDE while still interacting with a functioning frontend.

  • Required Docker Images:
    • agora-fe_internal
    • agora-fe_public
    • agora-fe_public_nginx
  • Required secrets:
    • db_name
    • db_username
    • db_password
    • db_root_password

Backend

Docker Compose configurations that start the backend dependencies, making it possible to run and debug the frontend against a real backend environment.

  • Required Docker Images:
    • agora-api
  • Required secrets:
    • db_name
    • db_username
    • db_password
    • db_root_password
    • ConnectionStrings__DefaultConnection

OS2agora

Docker Compose configurations for running the entire solution end-to-end in Docker

  • Required Docker Images:
    • agora-api
    • agora-fe_internal
    • agora-fe_public
    • agora-fe_public_nginx
  • Required secrets:
    • db_name
    • db_username
    • db_password
    • db_root_password
    • ConnectionStrings__DefaultConnection

About

Simple infrastructure for running the entire OS2agora solution

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published