Docker with S3 and SSE_C

Hi,

after 10 years of Seafile via packages, I wanted to take the first steps towards Docker with Seafile and at the same time change our storage to S3.

During testing, however, I encountered a problem. I would like to use SSE_C. This works fine as long as I don’t recreate the container.

As soon as I restart the container with “docker compose up -d --force-recreate”, I can no longer access the libraries. The S3 storage reports an error that not all the information is correct.

However, I can create a new library without any problem and use it until I recreate the container again. That would make updates very tricky :wink:

Is there something here that I have overlooked/need to save?

Error message from S3 storage: “The object was stored using a form of server-side encryption. The correct parameters must be specified to retrieve the object.”

Provider used: WASABI

If I deactivate SSE_C, it works perfectly, even after recreating the container.

I have tested it with the compose file from Datamate (as I prefer to work with environment variables) and the one from Seafile itself, same problem with both.

Do you have any ideas?

bye
Andre

Thank you very much for being part of the Seadays :slight_smile:

How do you generate your key and how do you persist it into the docker container?

Do you use this seafile_storage_classes.json? seafile-release/compose/seafile_storage_classes.json at main · datamate-rethink-it/seafile-release · GitHub

My assumption: every time you recreate the container, the key is overwritten and therefore you can not access your libraries.

This is the reason why I also tested it with the Docker container from Seafile Ltd. After the first creation, the config folder here is static.

And yes, I use the seafile_storage_classes.json.

But the key remains the same, unless I’m missing something here.

before:

after: