Installation ORTHANC Server sur un server NAS (FreeNAS)

Bonjour,

je cherche à installer ORTHANC sur un server NAS, et je n’y arrive pas.
Je n’ai pas trouver non plus de tutorial pour le faire.

Quelqu’un a-t’il une idée sur la manière de procéder ?

En vous remerciant,
Dr TOILLON

Dear Yannick,

You’re in an international forum, better to use english everyone could benefit Q/A in this community group,

FreeNas is BSD based, it seems the orthanc support for freeBSD is not updated (https://www.freshports.org/science/orthanc)
The other way to go would be to use docker, but docker support for freeBSD is still in progress https://wiki.freebsd.org/Docker

About the NAS, for a professional use I would recommand to use on of the commercial NAS either Qnap or Synology, Orthanc works fine in these two devices through Docker.

If you want to build a full FOSS NAS your own I would go to Open Media vault which is Debian based https://www.openmediavault.org/ and thus you will have native support for Docker an pre compiled orthanc binaries for Linux.

Best regards,

Salim

Ok !

So I have HP Proliant Micro Server as a NAS Storage on FreeBSD with FreeNAS 9,3 as an OS.

then, I understand that the easiest way to turn it into a DICOM server with Orthanc is to install Open Media as an OS on it ?
And then to install orthanc binaries for Linux ?

Best regards,

That’s what i would do if i wanted NAS + Orthanc on the same device.

I’m not saying is the best way, just it would be my own way…

Dear Salim,

Thank you for your precious help !

I manage to install OMV on my HP micro-server.
I installed docker plugins
I installed osimis/orthank container

Then I start orthanc server with this command through SSH

docker run --publish=80:8042 --publish=104:4242 osimis/orthanc

Then I go on my web browser xxx.xxx.xx.xxx:80
Then Orthanc Server ask me User & Password.

How can i configure user/pass through docker ? Where is the json file ?

Then I want to make my data persistent.
On osimis docker book, it said to run this command :

docker run --publish=80:8042 --publish=104:4242 --volume=/home/johndoe/orthanc-storage:/var/lib/orthanc/db osimis/orthanc
So, I have 2HDD monted as a RAID1 device
And I want my database on the root on this device (/dev/md0)

How can I do this ?

Best regards,

Dear Yannick,

Better to use Docker Compose to make your running environement, it is a way to define all your settings in a yml file.
Have a look at https://github.com/salimkanoun/GaelO_Installation/blob/master/Docker-Compose/docker-compose.yml

You will see in the environement you can override Orthanc.json value by passing the value you want (see https://book.orthanc-server.com/users/docker-osimis.html)
So this is the way you can define your users/pass.

For you persistance storage, you have to simply map the OrthancStorage folder of the container to your RAID1 hard disk.
That what I do in this line of the docker-compose
volumes: [“pacs_storage:/var/lib/orthanc/db:Z”]

here “pacs_storage” is telling Docker to create a volume itself, it will land in the internal folder of Docker but this volume will live independently of the container, the container can be destroyed / updated the volumes stays and could be reused in another vesion of Orthanc.

To put the persistance path to a specific path you have to simply put your full path like this
volumes: [“/My/Raid1/Path:/var/lib/orthanc/db:Z”]

So the persistance folder of Orthanc will be mapped to you specific path in your OS.

Best regards,

Salim

Dear Salim,

Thank you very much for your reactivity and your help.

So i used portainer and into PORTAINER I used STACKS to define my yml file configuration

I check on what you did and what is writen on the orthanc’s user group.

So here is my yml file :

version: “2”
services:
orthanc:
image: osimis/orthanc
restart: unless-stopped
ports: [“104:4242”, “8042:8042”]
volumes: [“/dev/md0/PACS:/var/lib/orthanc/db:Z”]
environment:
ORTHANC__NAME: “OrthancPacs”
ORTHANC__REGISTERED_USERS: |
{“pacs”: “pacs”}
ORTHANC__DICOM_SERVER_ENABLED: “true”
TRANSFERS_PLUGIN_ENABLED: “true”
DICOM_WEB_PLUGIN_ENABLED: “true”
ORTHANC__DICOM_WEB__ENABLE: “true”
ORTHANC__DICOM_WEB__ROOT: “/dicom-web/”
ORTHANC__DICOM_WEB__ENABLEWADO: “true”
ORTHANC__DICOM_WEB__WADOROOT: “/wado”
ORTHANC__DICOM_WEB__SSL: “true”
ORTHANC__DICOM_WEB__STUDIESMETADATA: “MainDicomTags”
ORTHANC__DICOM_WEB__SERIESMETADATA: “Full”
MYSQL_PLUGIN_ENABLED: “true”
ORTHANC__MYSQL__HOST: “indexorthanc”
ORTHANC__MYSQL__USERNAME: “orthancPacs”
ORTHANC__MYSQL__DATABASE: “orthancPacs”
ORTHANC__MYSQL__PASSWORD: “pacs”
ORTHANC__BUILTIN_DECODER_TRANSCODER_ORDER : “Before”

volumes:
orthanc-storage:

So when click on deploy the stack there is an error message :
Deployment error
Volum “orthanc-storage” needs to be recreated - driver has changed

I just want a simple pacs server to backup my XRay & US data on my NAS and i want to access to them through my web browser.

Is this configuration is correct ? Where is the error ?

Best regards,

Hi Yannick,

Try to remove the end of the file
volumes:
orthanc-storage:

You are delcaring a volume that you are not using, as you use a direct mount point in you hard disk.

on orther thing, please have a look on this : https://groups.google.com/g/orthanc-users/c/L1BqXbD900E/m/CB8wOnQ_AwAJ

The projet is still recent but I think it can be interessting for physician like you wanting to manage their patient’s images .

Best regards,

Salim

Hi Salim,

So i delete the lines as you suggest and it works perfectly.

But I have few more questions :

  • what is the difference between using postgre and mysql database to store data ?
  • Do I have to use the booth ? or just one of those is enough ?

I took a look at your project, it seems very interesting but to much complicated for my applications.

Thank you,
Best regards,
Yannick

Hi Yannick,

Only one database is needed, it is used by Orthanc to index the dicom files as while DICOM storage will grow you will lend on millions of DICOM stored in your hard disk and so Orthanc needs an index to know which files should be accessed when you call for a Study / Seires.

Postgres is having slightly better performance than Mysql, but the difference is small, so use the database system you are the most comfortable with (and usually you don’t need to dig to much in this database that is fully managed by orthanc).

Best regards,

Salim