Skip to content

Latest commit

 

History

History
68 lines (52 loc) · 3.21 KB

File metadata and controls

68 lines (52 loc) · 3.21 KB

Report Online Terrorist Material (ROTM)

Docker Repository on Quay.io Build Status

This project is built with HOF and uses Docker.

Getting started

Get the project from GitHub

$ git clone git@github.com:UKHomeOffice/rotm.git && cd rotm

Install the dependencies and build the project resources

$ yarn

Install Docker Compose

Run the services locally with Docker Compose

$ docker-compose up

Getting your hands dirty (You'll need Redis for this)

$ yarn start:dev

For anything else ROTM-related, look in package.json for a full list of scripts etc, and config.js for environment variables.

Otherwise, see HOF.

Environment variables

You'll need to set the following env vars to run the application:

NOTIFY_KEY | Your GOV.UK notify key NOTIFY_TEMPLATE | GOV.UK notify template ID for user authorisation email CASEWORKER_EMAIL | Caseworker email REFERRALS_EMAIL | Referrals email AWS_SECRET_ACCESS_KEY | AWS Secret Access Key AWS_ACCESS_KEY_ID | AWS Access Key ID FILE_VAULT_URL | The url that the file-vault service is running on KEYCLOAK_TOKEN_URL | The url of the keycloak server KEYCLOAK_CLIENT_ID | The client name used to authenticate with keycloak KEYCLOAK_SECRET | The secret used to authenticate with the keycloak client KEYCLOAK_USERNAME | Administrator username to authenticate with the keycloak client KEYCLOAK_PASSWORD | Administrator password used to authenticate with the keycloak client RECAPTCHA_SITE_KEY | Recaptcha site key RECAPTCHA_PROJECT_ID | Recaptcha project ID RECAPTCHA_THRESHOLD | Recaptcha threshold (defaults to 0)

To set up HAProxy and Openresty, you will need to set the following environment variables in your openresty deployment kube file: HAPROXY_UPSTREAM | HAProxy upstream configuration HAPROXY_UPSTREAM_SSL | HAProxy upstream configuration WAF_ADMIN_SALT | 32+ character random salt for password hashing WAF_ADMIN_PASSWORD | WAF Admin UI password

Microservices / Repos

These are the microservices used as part of ROTM:

  • File-vault - A simple REST service that allows POSTing a file to an S3 bucket.
  • HOF Docker HAproxy - Global rate limiting with stick-table sync
  • HOF Forms WAF - A comprehensive, multi-layer spam protection system for web forms using OpenResty (Lua) for intelligent form analysis. Features a modern React-based Admin UI for real-time configuration management.