Blog'o'Less - How-To - Dcm4chee On Ubuntu
Blog'o'Less - How-To - Dcm4chee On Ubuntu
blog'o'less
A blog by an unpretentious system administrator
Disclaimer Pages
Home
Maybe this article is not intended for a wide range of people reading this magazine, as I will describe the installation of a
niche software related to the medical and health-care enterprise world. It is not a home software; indeed nobody has a
Stuff
positron emission tomography (PET) facility at home, have they?
About
Labels
network tools
Blog Archive
web server and stuff like that
► 2018 (1)
programming languages and development tools
► 2017 (9)
anything strictly related to IT, computer science, network and so on
► 2016 (11)
and at last something related to business
▼ 2015 (10)
But there are other aspects of Linux and FOSS: the real world, the serious things. Like health care applications, as stated
► Sep (1)
above.
► Aug (2)
So, in this article I will explain how to install dcm4chee on Ubuntu. Maybe, as I said before, no reader of this magazine
► Jun (2)
will have the need or the knowledge to install and understand this software, but if you are a student, or if you know a
dentist or a radiological study, maybe you could be inspired by knowing the existence of this software. ► Mar (3)
► Feb (1)
DICOM and PACS ▼ Jan (1)
DICOM (Digital Imaging and Communications in Medicine) “is a standard for handling, storing, printing, and transmitting How-To:
information in medical imaging”. dcm4chee on
Ubuntu
PACS (Picture archiving and communication system) is a medical imaging technology which provides storage of and
access to images from multiple modalities. ► 2014 (17)
► 2013 (35)
A modality is a source machine where patient’s images are acquired from, for example, an X-Ray machine or a Magnetic
Resonance scanner. Some other actors of a PACS are: servers, storage (NAS, SAN, tapes), printers, viewers, CD/DVD ► 2012 (26)
robots, etc.
dcm4chee (http://dcm4che.org/) is a DICOM archive and image manager, that is the server side of a PACS system, the
server where medical images (an x-ray, an ultrasound, a magnetic resonance) will be stored, and from which a radiologist
will retrieve your examination in order to carry out a medical report.
“The application contains the DICOM, HL7 services and interfaces that are required to provide storage, retrieval, and
workflow to a health-care environment”. It is written in Java and is prepackaged and deployed within the JBoss
application server. It is open source and licensed under an MPL/GPL/LGPL triple license. There are also a lot of DICOM
related tools provided by the same developers and community (called dcm4che toolkit), and some DICOM viewers, like
Mayam, Oviyam and Weasis.
If you need help and assistance there is a Google group where a vibrant and nice community will be willing to give you
some advice. On the other hand, the wiki lacks a little bit in documentation, that is some pages are dated or are
incomplete.
Let's install it
Even if some willing person has packaged dcm4che in a “.deb” package, and even if I’m a lover of package management
systems, in this case I feel better if I install this software by hand.
So, let’s see how to install dcm4chee on Ubuntu server 14.04 LTS.
First of all we need to install Java. I’m not sure if dcm4chee works with OpenJDK. And I’m not sure if it works with Java
1.7, so let’s install Oracle Java 1.6, using a PPA repository.
Now we need to download JBoss and dcm4chee zip files. Download JBoss 4.2.3.GA (don’t use a newer version!) from
http://sourceforge.net/projects/jboss/files/JBoss/JBoss-4.2.3.GA/jboss-4.2.3.GA-jdk6.zip/download
Download the latest release of dcm4chee-mysql, 2.18.0 at time of writing, from
http://sourceforge.net/projects/dcm4che/files/dcm4chee/
Put the zip files in a temporary folder, like /var/tmp/dcminstall and unzip them
Since we are on a 64-bit operating system, and the dcm4chee zip file contains a 32-bit version of compression library, we
have to download the proper Java Advanced Imaging Image I/O Tools for linux 64-bit from
http://download.java.net/media/jai-imageio/builds/release/1.1/
and replace the Linux version of libclib_jiio.so
wget http://download.java.net/media/jai-imageio/builds/release/1.1/jai_imageio-1_1-lib-
linux-amd64.tar.gz
tar xzvf jai_imageio-1_1-lib-linux-amd64.tar.gz
cp /var/tmp/install/jai_imageio-1_1/lib/libclib_jiio.so /var/tmp/install/dcm4chee-2.18.0-
mysql/bin/native/libclib_jiio.so
Now we have to import the provided SQL file in order to create the database tables and indexes:
cd /var/tmp/install/dcm4chee-2.18.0-mysql/sql/
mysql -upacs -ppacs pacsdb < create.mysql
And now we have to move the dcm4chee directory to a definitive place, like /opt, and then it is useful to create a symbolic
link (so, in case of an upgrade, we don’t need to modify any script or anything else pointing to the dcm4chee directory):
cd /
sudo mv /var/tmp/install/dcm4chee-2.18.0-mysql/ /opt/
sudo ln -s /opt/dcm4chee-2.18.0-mysql /opt/dcm4chee
It is a good idea to create a dcm4chee user and change the owner of the installation dir.
useradd dcm4chee
chown -R dcm4chee /opt/dcm4chee-2.18.0-mysql
su - dcm4chee -c /opt/dcm4chee/bin/run.sh
In order to make changes to the default configuration, we need to use the JBoss jmx console
http://yourubuntuserver:8080/jmx-console/, and this task could be painful since there are no manuals covering a step-by-
step configuration: you have to dig inside the wiki and on the old forum or, as I said before, you can call for help in the
mailing list.
More info:
wiki - http://www.dcm4che.org/confluence/display/proj/The+Project
34 comments:
Anonymous April 13, 2015 at 11:56 AM
Reply
Replies
Maybe you are using the 32 bit version of imageio library with 64 bit java, or vice versa
Reply
Replies
me June 5, 2015 at 9:31 PM
Reply
Thanks for the article. I was looking for something like this.
Just one question: Where can I dowload the "Java Advanced Imaging Image I/O Tools for linux 64-bit" from? The
link is down and I can't find another option. Thanks.
Reply
Reply
Reply
Replies
Reply
Your disclaimer "no reader of this magazine will have the need or the knowledge to install and understand this
software" is wrong!
This was great!! Thank you so much for putting these up!
Reply
How can I get access to the server from external network if I don't see the standalone.xml file?, I have already
allowed access from anyware to all TCP ports. Thank in advance.
Reply
Reply
Hi,
after this command "su - dcm4chee -c /opt/dcm4chee/bin/run.sh" , system is asking password which password i
need to enter?
Reply
Replies
Well, the system user dcm4chee is an application user, like www-data, so it is not necessary to
configure a password for it (via the passwd command or whatever). So i think, if you are not root, that
you must use sudo:
sudo su - dcm4chee -c /opt/dcm4chee/bin/run.sh
Reply
Reply
Reply
Replies
You are mentioning "Put the zip files in a temporary folder, like /var/tmp/dcminstall and unzip them" but
using "/var/tmp/install" in your command lines
I have tried to run it with the default openJDK 1.8 of Ubuntu 16.10 but the web looks running but the
JBoss jmx console will fail. actually tried with all versions above 1.6 and all failed to show the console
right. the rest gave error messages and showed the code. Probably for the java gurus no challenge
but i am not. So went back to SDK 1.6 and all runs smooth.
Reply
Can you please give details why not to use with a new version of jboss please
Reply
Replies
Reply
Replies
Which version are you using? The latest one, 2.18.3, lack some files in the bin directory, you have to
copy the missing files from the 2.18.0 release. In addition, do you have issued the install_jboss.sh
script?
Reply
Reply
Hi,
I following exactly per your instructions, installed the same versions as yours, but the image is not showing up in
the dcm4chee when click on Open Image Selection.
Hi,
I followed exactly per your instructions, installed the same versions. But image is not showing up in dcm4chee
when click on open image selection. No any error, i noticed in the log file. Following is some part of the log file.
Reply
Hello, first of all thanks for the article, and now can you tell me how configure dcm4chee as a service or daemon
Reply
Hello, first of all thanks for the article, and second, can you tell me how configure dcm4chee as a service or
daemon
Reply
Replies
From http://www.dcm4che.org/docs/reference/dcm4chee/html/dcm4chee-installation.html
After verifying that the application is installed and running correctly, you may want to install it as a
Windows service or Unix daemon.
Reply
Nice tutorial,I am using dcmsnd command for sending dicom images with PatientId but image can't going to
specific patient and other patient are able to view data of different patient.
what will be the specific permission and roles for User to perform activities and how to send particular images for
specific patient.
can anyone know..?
Thanks in advance.
Reply
Hello,
Maybe someone can help me, how create CD/DVD from DCM4CHEE autorun using weasis viewer.
thanks
Reply
Reply
Enter Comment