Folder structure
Here is the list of files and folders extracted from the release package and their role described down below.
/docker
Contains every configuration file used for the docker stack, including docker-compose.yml.
This folder is considered to be the context by docker, which means that upon executing commands one must either address the config file explicitly or execute docker-compose commands directly inside here.
E.g. to verify the status of the stack there are two approaches:
Execute the command inside ./snow-owl/docker
:
Execute the command from somewhere else then ./snow-owl/docker
:
/docker/configs/cert
This folder contains the files necessary to acquire an SSL certificate. None of the files should be changed here ideally.
/docker/configs/elasticsearch
There is one important file here, elasticsearch.yml
which can be used for fine-tuning the Elasticsearch cluster. However, this is not necessary by default, only if an advanced configuration is required.
/docker/configs/ldap-boostrap
This folder contains the files used upon the first start of the OpenLDAP server. The files within describe a set of groups and users to set up an initial user access model. User credentials for the test users can be found in the file called 200_users.ldif
.
/docker/configs/mysql
This folder contains the configuration file of the MySQL server.
/docker/configs/nginx
Location of all configuration files for NGINX. By default, a non-secure HTTP configuration is assumed. If there is no need for an SSL certificate, then the files here will be used. If an SSL certificate was acquired, then the main configuration file of NGINX (nginx.conf) will be overwritten with the one under /docker/cert/nginx.conf
.
/docker/configs/snowowl
snowowl.yml: this file is the default configuration file of the Terminology Server. It does not need any changes by default either.
users: list of users for file-based authentication. There is one default user called snowowl
for which the credentials can be found under ./docker/.env
.
/docker/docker-compose.yml
The main configuration file for the docker stack. This file is replaced in case an SSL certificate was acquired (with file /docker/cert/docker-compose.yml
). This is where volumes, ports, or environment variables can be configured.
/docker/docker_login.txt
The credentials to use for authenticating with the B2i private docker registry.
/docker/.env
The collection of environment variables for the docker-compose.yml file.
This is the file to configure most of the settings of the Terminology Server. Including java heap size, Snow Owl or Elasticsearch version, passwords, or folder structure.
/ldap
The location where the OpenLDAP server stores its data.
/logs
Log files of the Terminology Server
/resources
Location of Elasticsearch and Snow Owl resources.
/resources/indexes
This is the data folder of Elasticsearch. Datasets must be extracted to this directory.
/resources/attachments
Snow Owl's local file storage. Import and export artifacts are stored here.
Pro tip💡: in case the Terminology Server is deployed to the cloud, make sure this path is served by a fast SSD disk (local or ephemeral SSD is the best). This will make import or export processes even faster.
/cert (optional)
In case an SSL certificate is acquired, all the files used by certbot
and NGINX are stored here. This folder is automatically created by the certificate retrieval script.
/backup (optional)
This is the initial folder of all backup artifacts. This should be configured as a network mount to achieve data redundancy.
Last updated