Configuration
Mandatory Configuration
Configure your Databus installation by changing the values in the .env
file in the root directory of the repository. The following values can be configured:
DATABUS_RESOURCE_BASE_URL: The base resource URL. All Databus resources will start with this URL prefix. Make sure that it matches the DNS entry pointing to your Databus server so that HTTP requests on the resource identifiers will point to your Databus deployment.
DATABUS_OIDC_ISSUER_BASE_URL: Base URL of your OIDC provider
DATABUS_OIDC_CLIENT_ID: Client Id of your OIDC client
DATABUS_OIDC_SECRET: Client Secret of your OIDC client
VIRTUOSO_PASSWORD: The password of the VIRTUOSO_USER account
If you would like to use the internal reverse proxy with automatic HTTPS (certificate) provisioning follow further proxy configuration instructions. Otherwise it is required to configure an external reverse proxy with a TLS-encrypted connection (HTTPS) of your choice for the Databus container (port 3000 by default - see example config).
Advanced Configuration
The configuration can be adjusted by modifying the docker-compose.yml
file directly. The compose file starts 3 docker containers.
Databus Container
The Databus container holds the Databus server application (port 3000) and search API (port 8080). The internal ports can be mapped to an outside port using the docker-compose port settings. Mapping the port of the search API is optional.
The Databus container accepts the following environment variables:
DATABUS_RESOURCE_BASE_URL: The base resource URL. All Databus resources will start with this URL prefix. Make sure that it matches the DNS entry pointing to your Databus server so that HTTP requests on the resource identifiers will point to your Databus deployment.
DATABUS_DATABASE_URL: The URL of your GStore database. Can be left as is. Change this only if you want to host your database elsewhere and you know what you are doing.
DATABUS_OIDC_ISSUER_BASE_URL: Base URL of your OIDC provider
DATABUS_OIDC_CLIENT_ID: Client Id of your OIDC client
DATABUS_OIDC_SECRET: Client Secret of your OIDC client
DATABUS_PRIVATE_MODE: Default is false. If set to true this will return an HTTP status code of 401 when trying to access the Databus without authentication.
The volumes of the Databus container are best left unchanged. The internal path of the volumes should not be altered. The ourside paths may be changed to any desired path. The keypair folder will store the private and public key of your Databus deployment. The users folder will hold a mini-database associating your OIDC users with Databus users.
GStore Container
The GStore is a git-repository / triple store hybrid database. It stores chunks of RDF data both as files in a git repository and graphs in a triple store. This allows rollback of commits AND sending of SPARQL queries. The default GStore configuration operates with an internal git repository (can be changed to an external repository, please refer to the GStore documentation) and a Virtuoso triple store.
The GStore Container accepts the following environment variables:
VIRT_USER: The admin user of your virtuoso deployment
VIRT_PASS: The admin password of your virtuoso deployment
VIRT_URI: The uri of the virtuoso deployment. Keep this as is unless you want to host your virtuoso triple store elsewhere.
Virtuoso Container
The Virtuoso container is the triple store database.
The Virtuoso Container accepts the following environment variables:
DBA_PASSWORD: Admin password
SPARQL_UPDATE: Needs to be set to true to allow updates
DEFAULT_GRAPH: Set this to your DATABUS_RESOURCE_BASE_URL setting
OIDC Configuration
OIDC Client Configuration
Follow the documentation of your OIDC provider to configure a client. Connect the client to the deployed Databus instance by setting the following environment variables on Datbaus startup:
DATABUS_OIDC_ISSUER_BASE_URL: The base URL of your OIDC provider
DATABUS_OIDC_CLIENT_ID: The client id of the configured client at the OIDC provider
DATABUS_OIDC_SECRET: the client secret of the configured client at the OIDC provider
When configuring the client at the OIDC provider, you will be most likely asked to specify a callback URI for redirects after a login. The callback values need to be set to the following values:
Callback https://databus.example.org/app/callback
Logout https://databus.example.org/app/logout
Login https://databus.example.org/app/login
OIDC Providers
Tested OIDC providers: Keycloak, Auth0, Microsoft Azure Active Directory
Last updated