Components¶
Endpoints¶
- Text Repository API
- Text Repository healtch checks
- Integration test results
- Elasticsearch indices
- Stub indexer
Services¶
The Text Repository application is bundled with a couple of services:
- Text Repository, core application
- Postgres as database
- Elasticsearch as search engine
- Docker and docker-compose for running and connecting services
- Nginx as a reverse proxy
Text Repository¶
The Text Repository is a java application build with dropwizard. It contains a REST-API to create, retrieve, update and delete documents, files, versions and metadata. It uses the postgres database to store its domain model. It keeps the elastic search indices in sync with the postgres database.
Postgres¶
Postgres is used as a ‘vault’ which contains all the data or ‘the golden standard’, from which all indices are generated.
Postgres data can be modified using the Text Repository REST-API.
Nginx¶
As a reverse proxy it exposes the relevant parts of all the service endpoints. See exposed endpoints below.