ID Database ConnectionException

Hi, I am running DataSHIELD in a docker container using the Doc template [¹].

Currently I get this error on the Dashboard:

No identifiers database is defined. No identifiers mapping can be performed when importing or exporting data.

… and this error when I test the ID database:

System Error An internal error has occurred. Please contact technical support and provide the following system error: ConnectException

The following settings are left from a previous docker run although I deleted the previous images and downloaded the docker images again:

jdbc:mysql://localhost:3306/opal_ids SQL Storage Tabular SQL opal Test Edit Unregister

“Unregister” keeps disappearing or gives the “ConnectionException” error above.

It seems something is broken, and some configs from a previous install are left in the system, but even deleting the docker images does not remove this.

How can I fix the ID database errors or clean all info on DataSHIELD and start from clean new docker images?

Kr, Shiny

[1] Installation — Opal documentation

Hi,

It is not an error message, it is a warning that some features will not be available because no ID database is defined. Having an ID database is absolutely not required for Datashield. It may only makes sens when you import from/export to different sources in some specific use cases. Then you most likely do not need to define an ID database.

Regarding docker, deleting an image does not delete the data files of the previous local instance. More specifically if you have mounted the /srv folder, you’ll get the previous config again.

Also have a look at the docker compose down vs. docker compose stop documentations.

Regards
Yannick

Dear Yannick, thanks I could solve all problems and start a new docker DataShield image by stopping all processes

docker stop

and removing all processes

docker rm

and removing the images ( docker images,

docker rmi

and deleting all permanent data. (see also docker-compose -f filename.yml down)

To delete the permanent data, I first (before stoping the docker containers) had to login to docker/opal:

docker exec -u 0 -it /bin/bash

and find the mount for /srv mapped to a folder on the host system

findmnt

which was /tmp/opal/ and remove all files with

sudo rm -R /tmp/opal/*

After that I performed

sudo docker-compose -f filename.yml up -d

and it worked without problems.

Good, but it is not a good idea to mount data on /tmp/opal as at the next server restart the /tmp folder content will be wiped out.