Hello!
I'm using gdcc/dataverse:6.10.1-noble-r4 image. I've created my own persona following the docs , I was able to configure the language and custom metadata blocks, however I haven't been able to add the banner image (:LogoCustomizationFile).
I first tried adding this in my own setup-all script:
curl -v -X PUT -H "X-Dataverse-key:$adminKey" -d "$SCRIPT_PATH/logos/logo.png" "${DATAVERSE_URL}/api/admin/settings/:LogoCustomizationFile"
No errors show in logs and the postgres setting is created, however the image is never displayed in the UI. I assumed the issue was because the dataverse container wasn't able to find the image, so I manually checked adding a new logo from the 'Theme+widgets' menu and realized it got saved at /dv/docroot/logos/1 inside the dataverse container, so I tried adding the logo directly to that folder from my bootstrap script:
mkdir -p /dv/docroot/logos/1
cp "$SCRIPT_PATH/logos/logo.png" /dv/docroot/logos/1/logo.png
chown -R 1000:1000 /dv/docroot
However it still doesn't work even tho the image is in the correct folder inside the dataverse container. If I go back to the Theme+Widgets menu and manually add another image, then it saves in the exact same place as the one I tried uploading from the bootstrap container and it is showed in the UI. I also realized when manually doing so, no :LogoCustomizationFile is added to the postgres setting table.
Could you please help me out on this?
Hmm, sounds related to this issue, which we haven't worked on yet: #10539
@daniel4nnah Have you followed https://guides.dataverse.org/en/latest/installation/config.html#custom-navbar-logo ?
The path you put in there is a URL, not a file path. One of the unfortunate past choices... :rolling_eyes:
The path part of a URL. It's confusing! :scream:
Although you can also use an absolute URL. https://example.org/my/logo.png will work as well.
Interesting. I've never tried using an absolute URL.
I am using a "static content" container running alongside Dataverse. Exposing it via an Ingress object under /static makes the stuff inside of it available.
See https://data-next.fz-juelich.de for an example.
Thanks!! It worked when I added an URL instead, I was using the image path
I have a second question regarding the 'Theme' image, is it possible to configure it from the bootstrap container? I'm not sure if that's what you were talking about when you mentioned the static content container. Or should I keep this customization directly from the UI?
I think @Oliver Bertuch fixed that in #9819.
Or at least I wrote this at https://ct.gdcc.io
I could be misunderstanding the question. :sweat_smile:
Thanks again, that helped me a lot, I was able to make it work! However, I had to add the reference of my banner and footer images to the dataversetheme table in postgres manually, I couldn't find an endpoint that did that for me. Does it exist?
I don't believe there's such an API, yet.
I say this because I see POST ย /api/dataverses/{id}/theme/images/{logo|thumbnail} under "API needed" at https://docs.google.com/document/d/1OZOw0niLnl3Gc70YLc_YXhltWlf_9kqiWwdXOJ2M8bk/edit?usp=sharing via https://github.com/IQSS/dataverse-frontend/issues/983
But, as that doc indicates, the new UI will need that API endpoint, so it should be coming at some point. I believe this feature request captures it:
Feature Request/Idea: Native API access to upload collection logos and Theme specificationsย ย #10194
Does that sound right?
Yes, exactly, that would be a great feature to add. Thanks again for all your help!
@daniel4nnah sure, please feel free to give that issue a :thumbs_up: and/or a comment.
I'm not sure about what we're talking with theme and banner/footer, but I usually use the DB options to set the custom text. Using HTML is allowed there and allows me to include (for example) the FZJ logo. I serve that using a static content container as mentioned above. See our instance for an example :slight_smile:
Last updated: Aug 18 2026 at 08:27 UTC