dockertls1.2dcmtkorthanc-server

Echoscu Failed: Data Dictionary Missing


I am running Orthanc Server using docker-compose file and attempting to connect to DICOM Server using TLS connection.More details here https://groups.google.com/g/orthanc-users/c/6gNCOVwTc6c. I downloaded the source code from github for dcmtk 3.6.6 (https://github.com/DCMTK/dcmtk). Followed the instruction for build and built dcmtk 3.6.6 on my debian 10 system. I added the "dcmtk-3.6.6-install/usr/local/bin/" folder to PATH using export PATH command.

After that I attempted to connect to the docker container using the command echoscu -v -aet ORTHANCA localhost 4242 +tls orthanc-a-server-key.pem orthanc-a-server-crt.pem +cf trusted-crt.pem. I received the following error log:

E: DcmDataDictionary: Cannot open file: /usr/local/share/dcmtk/dicom.dic
W: no data dictionary loaded, check environment variable: DCMDICTPATH
I: Requesting Association
I: Association Accepted (Max Send PDV: 16372)
I: Sending Echo Request (MsgID 1)
E: Echo Failed: 0006:0213 Data dictionary missing
E: Echo SCU Failed: 0006:0213 Data dictionary missing
I: Aborting Association

I added "dcmtk-3.6.6-install/usr/local/share/dcmtk/" to PATH and checked using echo $PATH that its been added correctly and in that path dicom.dic file is present. Its present however I am getting the same error as above.

In the docker terminal logs I get the following messages for the same

orthanc-a-server_1  | I0123 16:14:23.498902 CommandDispatcher.cpp:332] (dicom) Association Received from AET ORTHANCA on IP 192.168.7.1
orthanc-a-server_1  | I0123 16:14:23.499024 main.cpp:318] Incoming connection from AET ORTHANCA on IP 192.168.7.1, calling AET ANY-SCP
orthanc-a-server_1  | I0123 16:14:23.499142 CommandDispatcher.cpp:663] (dicom) Association Acknowledged (Max Send PDV: 16372) to AET ORTHANCA on IP 192.168.7.1
orthanc-a-server_1  | I0123 16:14:23.499831 CommandDispatcher.cpp:917] (dicom) Finishing association with AET ORTHANCA on IP 192.168.7.1: Peer aborted Association (or never connected)
orthanc-a-server_1  | I0123 16:14:23.499917 CommandDispatcher.cpp:930] (dicom) Association Aborted with AET ORTHANCA on IP 192.168.7.1

What am I missing here or doing wrong?


Solution

  • Your DICOM dictionary is not found, meaning that probably something in the build/installation went wrong.

    There are 2 possibilities to include the DICOM dictionary:

    From the documentation:

    The built-in approach offers the advantage that a binary will not have to load any information from a separate file which may get lost or or used in an outdated version. Loading the dictionary content from a separate file, however, has the advantage that application programs need not be recompiled if additions or corrections are made to the data dictionary.

    The related information can be found in the dcmtk sources under dcmdata/docs/datadict.txt, there is also an online version of the file.

    In short, for non-Windows systems:

    To compile the dictionary into the library:

    To use the separate dictionary:

    setenv DCMDICTPATH $HOME/dicom.dic
    

    Update: Added instructions from comment by Jörg Riesmeier.