Before starting with the installation it is necessary to install or upgrade the following tools:
- Docker: You can find the installation guide for your operating system here.
Caution
This installation includes a .env.deploy file that must be partially filled in by the user. In order to use the application correctly, you must enter this .env:
- OpenAI API Key
- OpenAI OrgID
- Github Client Secret
The infrastructure supports two deployment modes:
- Development mode (
dev): Builds images from local source code (requires backend and frontend repositories cloned alongside infrastructure) - Production mode (
prod): Uses pre-built images from container registries with nginx reverse proxy
-
Open Windows PowerShell.
-
Clone the GitHub repository with the following command:
git clone https://github.com/statuscompliance/infrastructure
-
Find the
infrastructurefolder or execute:cd .\infrastructure\
-
Navigate to the
Windowsdirectory:cd .\Windows\
-
Run the setup script and choose your deployment mode when prompted:
.\setup.ps1
-
Open a terminal.
-
Clone the GitHub repository by running the following command:
git clone https://github.com/statuscompliance/infrastructure
-
Change to the newly cloned directory:
cd infrastructure -
Run the setup script and choose your deployment mode when prompted (dev or prod):
./setup.sh
The script will prompt you to select between dev or prod mode (defaults to dev).
If you prefer to run Docker Compose manually:
Development mode:
docker compose -f docker-compose.dev.yml upProduction mode:
docker compose -f docker-compose.prod.yml upThe infrastructure consists of the following services:
- status-backend: Backend API service (Node.js)
- status-frontend: Frontend web application (React/Vite)
- reverse-proxy: Nginx reverse proxy (production only)
- nodered: Node-RED workflow automation
- postgres: PostgreSQL database
- grafana: Grafana monitoring and dashboards
- dragonfly: Redis-compatible in-memory data store
- director: Governify director service
- registry: Governify registry service
- mongo-registry: MongoDB for registry service
- 3000: Main application access (via nginx in prod, direct frontend in dev)
- 3001: Backend API (dev mode only)
- 1880: Node-RED editor
- 3100: Grafana dashboard
- 5432: PostgreSQL database
- 5400: Registry service
- 5800: Director service
- 6379: Dragonfly/Redis
web_network: Frontend, backend, and proxy communicationdb_network: Database services communicationnodered_network: Node-RED integration network