Running a docker orthanc container in AWS with storage in S3 bucket

Hello everybody!

I don’t have a formal education in computer sciences neither in server administration as I am a radiologist and I really have a hard time with understanding the documentation about setting up the orthanc S3 plugin running in AWS.

Currently starting from jodogne/orthanc-plugins:latest I build a docker image which I uploaded in AWS container registry,. The server is deployed online using AWS app runner. The Orthanc server is running well, but the DICOM files are stored on the machine where the server is deployed.

The question I have is, what modification should I add to the Dockerfile and orthanc.json file, such that the server will store the images in S3 bucket instead of locally.

I am trying to make the dockerfile and orthanc.json file as simple as possible, without any other dependencies or complications.

Please point me in the right direction.

Thank you!

Hello

The first step would be to thoroughly read the relevant section in the Orthanc book about AWS S3.

In summary, you need to modify the Orthanc JSON configuration to enable the object storage plugin, and configure it to point at your bucket.

The minimum viable configuration looks like this:

"AwsS3Storage" : {
  "BucketName": "test-orthanc-s3-plugin",
  "Region" : "eu-central-1",
}

I do not know the specifics of AWS app runner that seems to be different from EC2 (and thus not using IMDS) , but if you configure your container with the correct Application IAM role, the plugin should be able to reach your bucket.

If it does not work and you’re not sure where the problem comes from, you might want to generate temporary credentials that you add in the configuration above through the AccessKey and SecretKey entries, just to check if the problem comes from the authentication or from something else.

HTH