-
Notifications
You must be signed in to change notification settings - Fork 2
Troubleshooting
To identify and narrow down the root causes of a problem with the Raidionics-Slicer plugin, please have a look at potential error messages visible either inside the Python console of 3D Slicer or inside the Logging window of the plugin (both are indicated by red arrows in the image).
Make sure your local Docker installation is correct by clicking on the Test! button inside the Docker Settings section. You should get a popup window with the Docker status.
You should ensure Docker has the right permissions: either you do not need to be admin on your machine, or you can "unlock" Docker.
-
In a terminal, you can perform the following check:
docker image list -
If Docker needs sudo permissions to run, you will see a similar print:
permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Head "http://%2Fvar%2Frun%2Fdocker.sock/_ping": dial unix /var/run/docker.sock: connect: permission denied -
In a terminal, running the following should list the available Docker images:
sudo docker image list -
Solution:
- Ensure a docker group exists:
getent group docker - Add your user to the docker group:
sudo usermod -aG docker ${USER} - Completely log your user off the machine for the group permission to be properly in place.
- Ensure a docker group exists:
To come.
Same as Linux?
For the plugin to run properly, the appropriate Docker image must be manually downloaded locally on the computer (cf. Installation steps), as all processing happens inside this Docker image. The current image is: dbouget/raidionics-rads-v1.3.0-py39-cpu. When a segmentation or reporting process is started, a similar Docker call line should be visible at the top of the Logging section (cf. image).
In case of issue from the Docker image itself, the following test can be performed locally.
-
Download the test resources here.
-
Extract the downloaded data and copy the folder name (i.e., </path/to/TestCase-Docker>).
-
In a terminal, please run the following, after updating the </path/to/TestCase-Docker> to where you extracted the data (e.g., /home/dbouget/Desktop/TestCase-Docker):
docker run -v </path/to/TestCase-Docker>:/workspace/resources -t -i --ipc=host --user $(id -u) dbouget/raidionics-rads:v1.3-py39-cpu -c /workspace/resources/data/rads_config.ini -v debug
If the previous step succeeded, running the Docker image 3DSlicer should work. However, if the process stops along the way, in the Logging window something similar should show:
08/08/2025 10.27 ; root ; INFO ; LOG: Segmentation - Runtime: 60.34918236732483 seconds.
08/08/2025 10.27 ; root ; INFO ; LOG: Segmentation - Inference - End (2/4)
08/08/2025 10.27 ; root ; INFO ; LOG: Segmentation - Reconstruction - Begin (3/4)
08/08/2025 10.27 ; root ; DEBUG ; Reconstructing predictions.
08/08/2025 10.27 ; root ; DEBUG ; Resampling predictions with probabilities.
It indicates that the memory use inside the Docker image was too big and the image was then stopped before the end. As a sanity check, you can try using another input MR scan than it smaller (look at the size in MB on disk). Alternatively, inside the Docker Desktop app > Settings > Resources, the memory limit should be increased.
At this stage, any Docker-related compatibility issue has been ruled out, and potential issues will be stemming from the various processing steps occurring inside the Raidionics backend.
The following image illustrates the content of the Logging section when a process runs successfully, with a long list of DEBUG and INFO logs. In case of problems, WARNING and ERROR logs will be issued instead, which can be linked as description when reporting the issue.