Spaces:
Paused
Paused
{ | |
/** | |
* General configuration of Orthanc | |
**/ | |
// The logical name of this instance of Orthanc. This one is | |
// displayed in Orthanc Explorer and at the URI "/system". | |
"Name": "Orthanc", | |
// Path to the directory that holds the heavyweight files (i.e. the | |
// raw DICOM instances). Backslashes must be either escaped by | |
// doubling them, or replaced by forward slashes "/". | |
"StorageDirectory": "/var/lib/orthanc/db-v6", | |
// Path to the directory that holds the SQLite index (if unset, the | |
// value of StorageDirectory is used). This index could be stored on | |
// a RAM-drive or a SSD device for performance reasons. | |
"IndexDirectory": "/var/lib/orthanc/db-v6", | |
// Path to the directory where Orthanc stores its large temporary | |
// files. The content of this folder can be safely deleted if | |
// Orthanc once stopped. The folder must exist. The corresponding | |
// filesystem must be properly sized, given that for instance a ZIP | |
// archive of DICOM images created by a job can weight several GBs, | |
// and that there might be up to "min(JobsHistorySize, | |
// MediaArchiveSize)" archives to be stored simultaneously. If not | |
// set, Orthanc will use the default temporary folder of the | |
// operating system (such as "/tmp/" on UNIX-like systems, or | |
// "C:/Temp" on Microsoft Windows). | |
// "TemporaryDirectory" : "/tmp/Orthanc/", | |
// Enable the transparent compression of the DICOM instances | |
"StorageCompression": false, | |
// Maximum size of the storage in MB (a value of "0" indicates no | |
// limit on the storage size) | |
"MaximumStorageSize": 0, | |
// Maximum number of patients that can be stored at a given time | |
// in the storage (a value of "0" indicates no limit on the number | |
// of patients) | |
"MaximumPatientCount": 0, | |
// List of paths to the custom Lua scripts that are to be loaded | |
// into this instance of Orthanc | |
"LuaScripts": [], | |
// List of paths to the plugins that are to be loaded into this | |
// instance of Orthanc (e.g. "./libPluginTest.so" for Linux, or | |
// "./PluginTest.dll" for Windows). These paths can refer to | |
// folders, in which case they will be scanned non-recursively to | |
// find shared libraries. Backslashes must be either escaped by | |
// doubling them, or replaced by forward slashes "/". | |
"Plugins": [ | |
"/usr/share/orthanc/plugins/" | |
], | |
// Maximum number of processing jobs that are simultaneously running | |
// at any given time. A value of "0" indicates to use all the | |
// available CPU logical cores. To emulate Orthanc <= 1.3.2, set | |
// this value to "1". | |
"ConcurrentJobs": 2, | |
/** | |
* Configuration of the HTTP server | |
**/ | |
// Enable the HTTP server. If this parameter is set to "false", | |
// Orthanc acts as a pure DICOM server. The REST API and Orthanc | |
// Explorer will not be available. | |
"HttpServerEnabled": true, | |
// HTTP port for the REST services and for the GUI | |
"HttpPort": 8042, | |
// When the following option is "true", if an error is encountered | |
// while calling the REST API, a JSON message describing the error | |
// is put in the HTTP answer. This feature can be disabled if the | |
// HTTP client does not properly handles such answers. | |
"HttpDescribeErrors": true, | |
// Enable HTTP compression to improve network bandwidth utilization, | |
// at the expense of more computations on the server. Orthanc | |
// supports the "gzip" and "deflate" HTTP encodings. | |
"HttpCompressionEnabled": true, | |
/** | |
* Configuration of the DICOM server | |
**/ | |
// Enable the DICOM server. If this parameter is set to "false", | |
// Orthanc acts as a pure REST server. It will not be possible to | |
// receive files or to do query/retrieve through the DICOM protocol. | |
"DicomServerEnabled": true, | |
// The DICOM Application Entity Title | |
"DicomAet": "ORTHANC", | |
// Check whether the called AET corresponds to the AET of Orthanc | |
// during an incoming DICOM SCU request | |
"DicomCheckCalledAet": false, | |
// The DICOM port | |
"DicomPort": 4242, | |
// The default encoding that is assumed for DICOM files without | |
// "SpecificCharacterSet" DICOM tag, and that is used when answering | |
// C-Find requests (including worklists). The allowed values are | |
// "Ascii", "Utf8", "Latin1", "Latin2", "Latin3", "Latin4", | |
// "Latin5", "Cyrillic", "Windows1251", "Arabic", "Greek", "Hebrew", | |
// "Thai", "Japanese", "Chinese", "JapaneseKanji", "Korean", and | |
// "SimplifiedChinese". | |
"DefaultEncoding": "Latin1", | |
// The transfer syntaxes that are accepted by Orthanc C-Store SCP | |
"DeflatedTransferSyntaxAccepted": true, | |
"JpegTransferSyntaxAccepted": true, | |
"Jpeg2000TransferSyntaxAccepted": true, | |
"JpegLosslessTransferSyntaxAccepted": true, | |
"JpipTransferSyntaxAccepted": true, | |
"Mpeg2TransferSyntaxAccepted": true, | |
"RleTransferSyntaxAccepted": true, | |
// Whether Orthanc accepts to act as C-Store SCP for unknown storage | |
// SOP classes (aka. "promiscuous mode") | |
"UnknownSopClassAccepted": false, | |
// Set the timeout (in seconds) after which the DICOM associations | |
// are closed by the Orthanc SCP (server) if no further DIMSE | |
// command is received from the SCU (client). | |
"DicomScpTimeout": 30, | |
/** | |
* Security-related options for the HTTP server | |
**/ | |
// Whether remote hosts can connect to the HTTP server | |
"RemoteAccessAllowed": true, | |
// Whether or not SSL is enabled | |
"SslEnabled": false, | |
// Path to the SSL certificate in the PEM format (meaningful only if | |
// SSL is enabled) | |
"SslCertificate": "certificate.pem", | |
// Whether or not the password protection is enabled (using HTTP | |
// basic access authentication). Starting with Orthanc 1.5.8, if | |
// "AuthenticationEnabled" is not explicitly set, authentication is | |
// enabled iff. remote access is allowed (i.e. the default value of | |
// "AuthenticationEnabled" equals that of "RemoteAccessAllowed"). | |
"AuthenticationEnabled": false, | |
// The list of the registered users. Because Orthanc uses HTTP | |
// Basic Authentication, the passwords are stored as plain text. | |
"RegisteredUsers": { | |
// "alice" : "alicePassword" | |
}, | |
/** | |
* Network topology | |
**/ | |
// The list of the known DICOM modalities | |
"DicomModalities": { | |
/** | |
* Uncommenting the following line would enable Orthanc to | |
* connect to an instance of the "storescp" open-source DICOM | |
* store (shipped in the DCMTK distribution) started by the | |
* command line "storescp 2000". | |
**/ | |
// "sample" : [ "STORESCP", "127.0.0.1", 2000 ] | |
"sample": [ | |
"MONAILABEL", | |
"0.0.0.0", | |
104 | |
] | |
/** | |
* A fourth parameter is available to enable patches for | |
* specific PACS manufacturers. The allowed values are currently: | |
* - "Generic" (default value), | |
* - "GenericNoWildcardInDates" (to replace "*" by "" in date fields | |
* in outgoing C-Find requests originating from Orthanc), | |
* - "GenericNoUniversalWildcard" (to replace "*" by "" in all fields | |
* in outgoing C-Find SCU requests originating from Orthanc), | |
* - "StoreScp" (storescp tool from DCMTK), | |
* - "ClearCanvas", | |
* - "Dcm4Chee", | |
* - "Vitrea", | |
* - "GE" (Enterprise Archive, MRI consoles and Advantage Workstation | |
* from GE Healthcare). | |
* | |
* This parameter is case-sensitive. | |
**/ | |
// "clearcanvas" : [ "CLEARCANVAS", "192.168.1.1", 104, "ClearCanvas" ] | |
/** | |
* By default, the Orthanc SCP accepts all DICOM commands (C-ECHO, | |
* C-STORE, C-FIND, C-MOVE) issued by the registered remote SCU | |
* modalities. Starting with Orthanc 1.5.0, it is possible to | |
* specify which DICOM commands are allowed, separately for each | |
* remote modality, using the syntax below. The "AllowEcho" (resp. | |
* "AllowStore") option only has an effect respectively if global | |
* option "DicomAlwaysAllowEcho" (resp. "DicomAlwaysAllowStore") | |
* is set to false. | |
**/ | |
//"untrusted" : { | |
// "AET" : "ORTHANC", | |
// "Port" : 104, | |
// "Host" : "127.0.0.1", | |
// "AllowEcho" : false, | |
// "AllowFind" : false, | |
// "AllowMove" : false, | |
// "AllowStore" : true | |
//} | |
}, | |
// Whether to store the DICOM modalities in the Orthanc database | |
// instead of in this configuration file (new in Orthanc 1.5.0) | |
"DicomModalitiesInDatabase": false, | |
// Whether the Orthanc SCP allows incoming C-Echo requests, even | |
// from SCU modalities it does not know about (i.e. that are not | |
// listed in the "DicomModalities" option above). Orthanc 1.3.0 | |
// is the only version to behave as if this argument was set to "false". | |
"DicomAlwaysAllowEcho": true, | |
// Whether the Orthanc SCP allows incoming C-Store requests, even | |
// from SCU modalities it does not know about (i.e. that are not | |
// listed in the "DicomModalities" option above) | |
"DicomAlwaysAllowStore": true, | |
// Whether Orthanc checks the IP/hostname address of the remote | |
// modality initiating a DICOM connection (as listed in the | |
// "DicomModalities" option above). If this option is set to | |
// "false", Orthanc only checks the AET of the remote modality. | |
"DicomCheckModalityHost": false, | |
// The timeout (in seconds) after which the DICOM associations are | |
// considered as closed by the Orthanc SCU (client) if the remote | |
// DICOM SCP (server) does not answer. | |
"DicomScuTimeout": 10, | |
// The list of the known Orthanc peers | |
"OrthancPeers": { | |
/** | |
* Each line gives the base URL of an Orthanc peer, possibly | |
* followed by the username/password pair (if the password | |
* protection is enabled on the peer). | |
**/ | |
// "peer" : [ "http://127.0.0.1:8043/", "alice", "alicePassword" ] | |
// "peer2" : [ "http://127.0.0.1:8044/" ] | |
/** | |
* This is another, more advanced format to define Orthanc | |
* peers. It notably allows to specify HTTP headers, a HTTPS | |
* client certificate in the PEM format (as in the "--cert" option | |
* of curl), or to enable PKCS#11 authentication for smart cards. | |
**/ | |
// "peer" : { | |
// "Url" : "http://127.0.0.1:8043/", | |
// "Username" : "alice", | |
// "Password" : "alicePassword", | |
// "HttpHeaders" : { "Token" : "Hello world" }, | |
// "CertificateFile" : "client.crt", | |
// "CertificateKeyFile" : "client.key", | |
// "CertificateKeyPassword" : "certpass", | |
// "Pkcs11" : false | |
// } | |
}, | |
// Whether to store the Orthanc peers in the Orthanc database | |
// instead of in this configuration file (new in Orthanc 1.5.0) | |
"OrthancPeersInDatabase": false, | |
// Parameters of the HTTP proxy to be used by Orthanc. If set to the | |
// empty string, no HTTP proxy is used. For instance: | |
// "HttpProxy" : "192.168.0.1:3128" | |
// "HttpProxy" : "proxyUser:proxyPassword@192.168.0.1:3128" | |
"HttpProxy": "", | |
// If set to "true", debug messages from libcurl will be issued | |
// whenever Orthanc makes an outgoing HTTP request. This is notably | |
// useful to debug HTTPS-related problems. | |
"HttpVerbose": false, | |
// Set the timeout for HTTP requests issued by Orthanc (in seconds). | |
"HttpTimeout": 60, | |
// Enable the verification of the peers during HTTPS requests. This | |
// option must be set to "false" if using self-signed certificates. | |
// Pay attention that setting this option to "false" results in | |
// security risks! | |
// Reference: http://curl.haxx.se/docs/sslcerts.html | |
"HttpsVerifyPeers": true, | |
// Path to the CA (certification authority) certificates to validate | |
// peers in HTTPS requests. From curl documentation ("--cacert" | |
// option): "Tells curl to use the specified certificate file to | |
// verify the peers. The file may contain multiple CA | |
// certificates. The certificate(s) must be in PEM format." On | |
// Debian-based systems, this option can be set to | |
// "/etc/ssl/certs/ca-certificates.crt" | |
"HttpsCACertificates": "", | |
/** | |
* Advanced options | |
**/ | |
// Dictionary of symbolic names for the user-defined metadata. Each | |
// entry must map an unique string to an unique number between 1024 | |
// and 65535. Reserved values: | |
// - The Orthanc whole-slide imaging plugin uses metadata 4200 | |
"UserMetadata": { | |
// "Sample" : 1024 | |
}, | |
// Dictionary of symbolic names for the user-defined types of | |
// attached files. Each entry must map an unique string to an unique | |
// number between 1024 and 65535. Optionally, a second argument can | |
// provided to specify a MIME content type for the attachment. | |
"UserContentType": { | |
// "sample" : 1024 | |
// "sample2" : [ 1025, "application/pdf" ] | |
}, | |
// Number of seconds without receiving any instance before a | |
// patient, a study or a series is considered as stable. | |
"StableAge": 60, | |
// By default, Orthanc compares AET (Application Entity Titles) in a | |
// case-insensitive way. Setting this option to "true" will enable | |
// case-sensitive matching. | |
"StrictAetComparison": false, | |
// When the following option is "true", the MD5 of the DICOM files | |
// will be computed and stored in the Orthanc database. This | |
// information can be used to detect disk corruption, at the price | |
// of a small performance overhead. | |
"StoreMD5ForAttachments": true, | |
// The maximum number of results for a single C-FIND request at the | |
// Patient, Study or Series level. Setting this option to "0" means | |
// no limit. | |
"LimitFindResults": 0, | |
// The maximum number of results for a single C-FIND request at the | |
// Instance level. Setting this option to "0" means no limit. | |
"LimitFindInstances": 0, | |
// The maximum number of active jobs in the Orthanc scheduler. When | |
// this limit is reached, the addition of new jobs is blocked until | |
// some job finishes. | |
"LimitJobs": 10, | |
// If this option is set to "true" (default behavior until Orthanc | |
// 1.3.2), Orthanc will log the resources that are exported to other | |
// DICOM modalities or Orthanc peers, inside the URI | |
// "/exports". Setting this option to "false" is useful to prevent | |
// the index to grow indefinitely in auto-routing tasks (this is the | |
// default behavior since Orthanc 1.4.0). | |
"LogExportedResources": false, | |
// Enable or disable HTTP Keep-Alive (persistent HTTP | |
// connections). Setting this option to "true" prevents Orthanc | |
// issue #32 ("HttpServer does not support multiple HTTP requests in | |
// the same TCP stream"), but can possibly slow down HTTP clients | |
// that do not support persistent connections. The default behavior | |
// used to be "false" in Orthanc <= 1.5.1. Setting this option to | |
// "false" is also recommended if Orthanc is compiled against | |
// Mongoose. | |
"KeepAlive": true, | |
// Enable or disable Nagle's algorithm. Only taken into | |
// consideration if Orthanc is compiled to use CivetWeb. Experiments | |
// show that best performance can be obtained by setting both | |
// "KeepAlive" and "TcpNoDelay" to "true". Beware however of | |
// caveats: https://eklitzke.org/the-caveats-of-tcp-nodelay | |
"TcpNoDelay": true, | |
// Number of threads that are used by the embedded HTTP server. | |
"HttpThreadsCount": 50, | |
// If this option is set to "false", Orthanc will run in index-only | |
// mode. The DICOM files will not be stored on the drive. Note that | |
// this option might prevent the upgrade to newer versions of Orthanc. | |
"StoreDicom": true, | |
// DICOM associations initiated by Lua scripts are kept open as long | |
// as new DICOM commands are issued. This option sets the number of | |
// seconds of inactivity to wait before automatically closing a | |
// DICOM association used by Lua. If set to 0, the connection is | |
// closed immediately. | |
"DicomAssociationCloseDelay": 5, | |
// Maximum number of query/retrieve DICOM requests that are | |
// maintained by Orthanc. The least recently used requests get | |
// deleted as new requests are issued. | |
"QueryRetrieveSize": 100, | |
// When handling a C-Find SCP request, setting this flag to "true" | |
// will enable case-sensitive match for PN value representation | |
// (such as PatientName). By default, the search is | |
// case-insensitive, which does not follow the DICOM standard. | |
"CaseSensitivePN": false, | |
// Configure PKCS#11 to use hardware security modules (HSM) and | |
// smart cards when carrying on HTTPS client authentication. | |
/** | |
"Pkcs11" : { | |
"Module" : "/usr/local/lib/libbeidpkcs11.so", | |
"Module" : "C:/Windows/System32/beidpkcs11.dll", | |
"Pin" : "1234", | |
"Verbose" : true | |
} | |
**/ | |
// If set to "false", Orthanc will not load its default dictionary | |
// of private tags. This might be necessary if you cannot import a | |
// DICOM file encoded using the Implicit VR Endian transfer syntax, | |
// and containing private tags: Such an import error might stem from | |
// a bad dictionary. You can still list your private tags of | |
// interest in the "Dictionary" configuration option below. | |
"LoadPrivateDictionary": true, | |
// Locale to be used by Orthanc. Currently, only used if comparing | |
// strings in a case-insensitive way. It should be safe to keep this | |
// value undefined, which lets Orthanc autodetect the suitable locale. | |
// "Locale" : "en_US.UTF-8", | |
// Register a new tag in the dictionary of DICOM tags that are known | |
// to Orthanc. Each line must contain the tag (formatted as 2 | |
// hexadecimal numbers), the value representation (2 upcase | |
// characters), a nickname for the tag, possibly the minimum | |
// multiplicity (> 0 with defaults to 1), possibly the maximum | |
// multiplicity (0 means arbitrary multiplicity, defaults to 1), and | |
// possibly the Private Creator (for private tags). | |
"Dictionary": { | |
// "0014,1020" : [ "DA", "ValidationExpiryDate", 1, 1 ] | |
// "00e1,10c2" : [ "UI", "PET-CT Multi Modality Name", 1, 1, "ELSCINT1" ] | |
// "7053,1003" : [ "ST", "Original Image Filename", 1, 1, "Philips PET Private Group" ] | |
// "2001,5f" : [ "SQ", "StackSequence", 1, 1, "Philips Imaging DD 001" ] | |
}, | |
// Whether to run DICOM C-Move operations synchronously. If set to | |
// "false" (asynchronous mode), each incoming C-Move request results | |
// in the creation of a new background job. Up to Orthanc 1.3.2, the | |
// implicit behavior was to use synchronous C-Move ("true"). Between | |
// Orthanc 1.4.0 and 1.4.2, the default behavior was set to | |
// asynchronous C-Move ("false"). Since Orthanc 1.5.0, the default | |
// behavior is back to synchronous C-Move ("true", which ensures | |
// backward compatibility with Orthanc <= 1.3.2). | |
"SynchronousCMove": true, | |
// Maximum number of completed jobs that are kept in memory. A | |
// processing job is considered as complete once it is tagged as | |
// "Success" or "Failure". Since Orthanc 1.5.0, a value of "0" | |
// indicates to keep no job in memory (i.e. jobs are removed from | |
// the history as soon as they are completed), which prevents the | |
// use of some features of Orthanc (typically, synchronous mode in | |
// REST API) and should be avoided for non-developers. | |
"JobsHistorySize": 10, | |
// Whether to save the jobs into the Orthanc database. If this | |
// option is set to "true", the pending/running/completed jobs are | |
// automatically reloaded from the database if Orthanc is stopped | |
// then restarted (except if the "--no-jobs" command-line argument | |
// is specified). This option should be set to "false" if multiple | |
// Orthanc servers are using the same database (e.g. if PostgreSQL | |
// or MariaDB/MySQL is used). | |
"SaveJobs": true, | |
// Specifies how Orthanc reacts when it receives a DICOM instance | |
// whose SOPInstanceUID is already stored. If set to "true", the new | |
// instance replaces the old one. If set to "false", the new | |
// instance is discarded and the old one is kept. Up to Orthanc | |
// 1.4.1, the implicit behavior corresponded to "false". | |
"OverwriteInstances": false, | |
// Maximum number of ZIP/media archives that are maintained by | |
// Orthanc, as a response to the asynchronous creation of archives. | |
// The least recently used archives get deleted as new archives are | |
// generated. This option was introduced in Orthanc 1.5.0, and has | |
// no effect on the synchronous generation of archives. | |
"MediaArchiveSize": 1, | |
// Performance setting to specify how Orthanc accesses the storage | |
// area during C-FIND. Three modes are available: (1) "Always" | |
// allows Orthanc to read the storage area as soon as it needs an | |
// information that is not present in its database (slowest mode), | |
// (2) "Never" prevents Orthanc from accessing the storage area, and | |
// makes it uses exclusively its database (fastest mode), and (3) | |
// "Answers" allows Orthanc to read the storage area to generate its | |
// answers, but not to filter the DICOM resources (balance between | |
// the two modes). By default, the mode is "Always", which | |
// corresponds to the behavior of Orthanc <= 1.5.0. | |
"StorageAccessOnFind": "Always", | |
// Whether Orthanc monitors its metrics (new in Orthanc 1.5.4). If | |
// set to "true", the metrics can be retrieved at | |
// "/tools/metrics-prometheus" formetted using the Prometheus | |
// text-based exposition format. | |
"MetricsEnabled": true, | |
// Whether calls to URI "/tools/execute-script" is enabled. Starting | |
// with Orthanc 1.5.8, this URI is disabled by default for security. | |
"ExecuteLuaEnabled": false, | |
// Set the timeout for HTTP requests, in seconds. This corresponds | |
// to option "request_timeout_ms" of Mongoose/Civetweb. It will set | |
// the socket options "SO_RCVTIMEO" and "SO_SNDTIMEO" to the | |
// specified value. | |
"HttpRequestTimeout": 30 | |
} |