annotate Sphinx/source/users/cookbook.rst @ 919:5c1ce758f748

uclouvain
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 17 Mar 2023 12:58:14 +0100
parents db16e0fffe67
children 897903f8deb8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1 .. highlight:: bash
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
2 .. _cookbook:
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
3
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
4 Quickstart
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
5 ==========
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
6
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
7 .. contents::
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
8 :depth: 2
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
9
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
10
31
93bbfaf0e62c worklist instructions migrated to a specific page, indexing of Osimis Web viewer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 28
diff changeset
11 .. _binaries:
28
dc235678897c webviewer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 26
diff changeset
12
0
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
13 Obtaining binaries
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
14 ------------------
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
15
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
16 To obtain the Orthanc binaries, you have several possibilities:
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
17
358
011b01ccf52d fixing external hyperlinks
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 292
diff changeset
18 * `Download pre-compiled packages <https://www.orthanc-server.com/download.php>`__.
887
db16e0fffe67 re-indexing of the jodogne/orthanc Docker images
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 882
diff changeset
19 * Use ``jodogne/orthanc`` :ref:`Docker images <docker>`.
882
815f70009ec2 highlight osimis/orthanc docker images since jodogne/orthanc images are currently not up-to-date
Alain Mazy <am@osimis.io>
parents: 803
diff changeset
20 * Use ``osimis/orthanc`` :ref:`Docker images <docker-osimis>`.
572
b78e8bf4d021 opensuse
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 535
diff changeset
21 * On GNU/Linux, use precompiled packages for :ref:`Debian/Ubuntu
801
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
22 <debian-packages>` (courtesy of DebianMed and Sébastien Jodogne), or
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
23 for `openSUSE <https://software.opensuse.org/search?q=orthanc>`__
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
24 (courtesy of Axel Braun).
574
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 573
diff changeset
25 * On GNU/Linux, use our `LSB binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 573
diff changeset
26 <https://lsb.orthanc-server.com/>`__ (Linux Standard Base), that
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 573
diff changeset
27 should easily and immediately run on most distributions. Those
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 573
diff changeset
28 binaries are statically linked together with all their third-party
669
d5a646b2b421 chmod x
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 574
diff changeset
29 dependencies. Don't forget to execute ``chmod +x ./Orthanc`` in
d5a646b2b421 chmod x
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 574
diff changeset
30 order to be able to run the main Orthanc executable.
292
8aa416899db4 added a tuto to connect a modality to Orthanc
Alain Mazy <alain@mazy.be>
parents: 54
diff changeset
31 * :ref:`Compile Orthanc by yourself <compiling>`.
26
7f98cfa8708f docker, upload issue
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 0
diff changeset
32 * External contributors are also maintaining `Vagrant VM for Orthanc
358
011b01ccf52d fixing external hyperlinks
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 292
diff changeset
33 <https://github.com/jodogne/OrthancContributed/blob/master/Links.md#user-content-vagrant>`__.
0
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
34
801
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
35 .. highlight:: bash
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
36
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
37 Furthermore, if you are running Debian 9 (stretch), Debian 10
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
38 (buster), Debian 11 (bullseye), Ubuntu 18.04 LTS (bionic) or Ubuntu
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
39 20.04 LTS (focal) on an **AMD64 architecture**, Sébastien Jodogne
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
40 maintains a **standalone Debian repository** that provides the latest
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
41 versions of the LSB binaries. For instance, here is how to install the
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
42 :ref:`Stone Web viewer <stone_webviewer>` on a barebone Docker setup::
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
43
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
44 # docker run --rm -t -i -p 8042:8042 -p 4242:4242 debian:9
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
45
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
46 $ apt update
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
47 $ DEBIAN_FRONTEND=noninteractive apt install -y software-properties-common wget curl nano gnupg apt-transport-https
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
48
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
49 $ apt install --upgrade ca-certificates
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
50 $ wget -qO - https://debian.orthanc-labs.com/archive.key | apt-key add -
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
51 $ apt-add-repository "deb https://debian.orthanc-labs.com/ `grep VERSION_CODENAME /etc/os-release | cut -d'=' -f 2` main"
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
52
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
53 $ apt clean && apt update
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
54 $ apt install orthanc-stone-webviewer
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
55 $ /etc/init.d/orthanc start
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
56
803
f3caa014eb88 note about Python plugin in the standalone Debian repo
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 801
diff changeset
57 Note that this standalone Debian repository **does not** contain the
f3caa014eb88 note about Python plugin in the standalone Debian repo
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 801
diff changeset
58 :ref:`Python plugin <python-plugin>`, as this plugin must be
f3caa014eb88 note about Python plugin in the standalone Debian repo
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 801
diff changeset
59 dynamically linked against the system-wide version of your Python
f3caa014eb88 note about Python plugin in the standalone Debian repo
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 801
diff changeset
60 runtime. You should install the ``orthanc-python`` package from your
f3caa014eb88 note about Python plugin in the standalone Debian repo
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 801
diff changeset
61 native Debian/Ubuntu distribution if available, or compile the plugin
f3caa014eb88 note about Python plugin in the standalone Debian repo
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 801
diff changeset
62 from sources.
801
db20ad016bc2 standalone debian repository
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 669
diff changeset
63
0
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
64
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
65 .. _orthanc-explorer:
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
66
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
67 Opening Orthanc Explorer
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
68 ------------------------
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
69
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
70 The most straightforward way to use Orthanc consists in opening
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
71 **Orthanc Explorer**, the embedded administrative interface of
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
72 Orthanc, with a Web browser. Once Orthanc is running, open the
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
73 following URL: http://localhost:8042/app/explorer.html. Please note
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
74 that:
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
75
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
76 * The port number 8042 depends on your :ref:`configuration
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
77 <configuration>`.
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
78 * Orthanc Explorer does not work with Microsoft Internet
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
79 Explorer. Please use Mozilla Firefox, Google Chrome, Apple Safari,
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
80 or `any WebKit-based Web browser <https://en.wikipedia.org/wiki/WebKit>`__.
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
81
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
82
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
83 Uploading DICOM files
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
84 ---------------------
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
85
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
86 The Orthanc Explorer interface contains a user-friendly page to upload
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
87 DICOM files. You can reach the upload page at
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
88 http://localhost:8042/app/explorer.html#upload. Then, you can drag and
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
89 drop your DICOM files and click on the Upload button.
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
90
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
91 You can `watch this video tutorial
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
92 <https://www.youtube.com/watch?v=4dOcXGMlcFo&hd=1>`__ that shows how
26
7f98cfa8708f docker, upload issue
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 0
diff changeset
93 to upload files to Orthanc through Orthanc Explorer with Chromium.
7f98cfa8708f docker, upload issue
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 0
diff changeset
94
7f98cfa8708f docker, upload issue
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 0
diff changeset
95 **Important:** There is currently a `known issue
445
987fbbc2b59e leaving bitbucket wrt. bug tracker
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 358
diff changeset
96 <https://bugs.orthanc-server.com/show_bug.cgi?id=21>`__ that might
987fbbc2b59e leaving bitbucket wrt. bug tracker
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 358
diff changeset
97 prevent Mozilla Firefox to correctly upload all DICOM files if using
987fbbc2b59e leaving bitbucket wrt. bug tracker
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 358
diff changeset
98 drag-and-drop.
0
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
99
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
100
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
101 Uploading through the DICOM protocol
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
102 ------------------------------------
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
103
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
104 Once Orthanc is up and running, any imaging modality can send
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
105 instances to Orthanc through the DICOM protocol (with the C-Store
292
8aa416899db4 added a tuto to connect a modality to Orthanc
Alain Mazy <alain@mazy.be>
parents: 54
diff changeset
106 command). Check :ref:`this tutorial <configure-modality>` to
8aa416899db4 added a tuto to connect a modality to Orthanc
Alain Mazy <alain@mazy.be>
parents: 54
diff changeset
107 connect your modality to Orthanc.
0
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
108
292
8aa416899db4 added a tuto to connect a modality to Orthanc
Alain Mazy <alain@mazy.be>
parents: 54
diff changeset
109 You can also use the standard command-line tool ``storescu`` from the
358
011b01ccf52d fixing external hyperlinks
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 292
diff changeset
110 `DCMTK software <https://dicom.offis.de/dcmtk.php.en>`__ to manually
011b01ccf52d fixing external hyperlinks
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 292
diff changeset
111 send DICOM images to Orthanc, for instance::
0
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
112
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
113 $ storescu -aec ORTHANC localhost 4242 *.dcm
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
114
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
115 will send all the files with ".dcm" extension to the instance of
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
116 Orthanc that is running on the ``localhost``, whose application entity
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
117 title (AET) is ``ORTHANC``, and whose DICOM port is
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
118 ``4242``. Obviously, all these parameters depend on your
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
119 :ref:`configuration <configuration>`. Please check the :ref:`FAQ
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
120 <dicom>` if you encounter any problem.
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
121
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
122
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
123 Next steps
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
124 ----------
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
125
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
126 1. Read the general introduction ":ref:`dicom-guide`".
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
127 2. Have a look at your :ref:`configuration file <configuration>`.
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
128 3. Drive Orthanc through its :ref:`REST API <rest>`.
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
129 4. Automate DICOM tasks with :ref:`Lua scripts <lua>`.
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
130