This might be more related to Docker than to Orthanc. I have my orthanc instances setup to map var/lib/orthanc/worklists in the Orthanc container to ./MWLFiles, /MWLFiles2, etc. on my host. That has all been working fine and I have easy access to the MWL files on the host side for development.
I’ve been working on another Python container that I’m building to do most of the MWL management and to possibly handle MPPS N_CREATE, N_SET, etc, which is coming along. Even have a thing to create MWL files from a simpler JSON request using ShortNames instead of having to use a .txt template like outlined in the Orthanc Book. When I get far enough along I’ll post that project on GitHub as a free-standing version with a Docker setup have an Orthanc Instance, the Python container to handle MWL’s and a MySQL database.
I wanted to test that by writing the .wl file to my ./MWLFIles folder on the host by also binding that same folder on the host to my Python container. (i.e. Orthanc instance and Python container share the same host folder). That way, I can also use the built-in Orthanc MWL plug-in to process Find Requests for MWL files.
The docker-compose.yml for the MPPS/MWL Python container is shown below. The issue is that I cannot write to the shared host bind because it is apparently locked by my Orthanc Instance. The same script can write to the MPPS bind without a problem. That folder is not shared with any other containers. Is that something to do with my Docker setup, or is that folder locked because the Orthanc instance cannot share it with another container for some reason ? I tried adding the UNLOCK: “true” option to my Orthanc Instance and that has no effect for the MWL lock.
Thanks.
Note that the Orthanc Instance is bound to the same host folder:
./MWLFiles:/var/lib/orthanc/worklists
MPPS testing server
python_mpps:
build: python_mpps
image: sdscotti/python_mpps
depends_on: [pacs-1, pacs-2, mysql_db]
ports: [“104:11112”]
volumes:
- ./python_mpps/mpps_scripts:/mpps_scripts # python scripts for mpps
- ./tls:/etc/python/tls # ssl certs path for all of the containers, a wildcard
- ./MPPS:/MPPS
- ./MWLFiles:/MWLFiles
tty: true