After migration to new server images not showing. Affects both authors and covers. #2859

Closed
opened 2026-04-25 00:11:19 +02:00 by adam · 3 comments
Owner

Originally created by @derkington on GitHub (Jun 27, 2025).

What happened?

Moving from debian v2.25.1 install to docker v2.25.1, images not showing. Affects both author and covers.

What did you expect to happen?

After restoring files to the new instance, covers for audiobooks and images for authors displayed.

Steps to reproduce the issue

  • Start up fresh docker instance (file paths remain the same)
  • Stop docker instance
  • I have followed this guide https://www.audiobookshelf.org/guides/migration-and-backups both filesystem and restore methods
  • Start intance and log in, all works expect audiobook covers shown as "invalid" and author images are not shown

Audiobookshelf version

v2.25.1

How are you running audiobookshelf?

Docker

What OS is your Audiobookshelf server hosted from?

Linux

If the issue is being seen in the UI, what browsers are you seeing the problem on?

Firefox

Logs

Could not see anything of interest in the logs.

Additional Notes

1- I have kept the file paths the same. After a restoring data I can play any file without issue.
2- I have tried both UI and filesystem restores from different backups of current server to new. I have used this guide https://www.audiobookshelf.org/guides/migration-and-backups
3- Covers are embedded into the files using quick embed and previously other tools.
4- I have gone to the UI and “purged all cache” and “purge item cache”
5- If I remove the library and create new, then scan, all images are found.
6- I have recreated and restarted and restored many times now.
7 - Affects all browsers and android client.
8 - I have started library scans at various points, does not solve the problem.
9 - I can see cover.jpg and metadata.json files in folders under /metadata/items/*

Originally created by @derkington on GitHub (Jun 27, 2025). ### What happened? Moving from debian v2.25.1 install to docker v2.25.1, images not showing. Affects both author and covers. ### What did you expect to happen? After restoring files to the new instance, covers for audiobooks and images for authors displayed. ### Steps to reproduce the issue - Start up fresh docker instance (file paths remain the same) - Stop docker instance - I have followed this guide https://www.audiobookshelf.org/guides/migration-and-backups both filesystem and restore methods - Start intance and log in, all works expect audiobook covers shown as "invalid" and author images are not shown ### Audiobookshelf version v2.25.1 ### How are you running audiobookshelf? Docker ### What OS is your Audiobookshelf server hosted from? Linux ### If the issue is being seen in the UI, what browsers are you seeing the problem on? Firefox ### Logs ```shell Could not see anything of interest in the logs. ``` ### Additional Notes 1- I have kept the file paths the same. After a restoring data I can play any file without issue. 2- I have tried both UI and filesystem restores from different backups of current server to new. I have used this guide https://www.audiobookshelf.org/guides/migration-and-backups 3- Covers are embedded into the files using quick embed and previously other tools. 4- I have gone to the UI and “purged all cache” and “purge item cache” **5- If I remove the library and create new, then scan, all images are found.** 6- I have recreated and restarted and restored many times now. 7 - Affects all browsers and android client. 8 - I have started library scans at various points, does not solve the problem. 9 - I can see cover.jpg and metadata.json files in folders under /metadata/items/*
adam added the bug label 2026-04-25 00:11:19 +02:00
adam closed this issue 2026-04-25 00:11:19 +02:00
Author
Owner

@Vito0912 commented on GitHub (Jun 27, 2025):

TLDR; You can't switch from Debian to Docker as far as I know. Not a bug

Moving between install methods is not supported.

Potential fix:
Your file paths are probably not the same because the default metadata path is different for the "debian" installation method, as far as I know.
You need to copy the exact file structure for all files from your old installation (including metadata).

The files are in /metadata now because you restored the backup there when the docker install said they are in /metadata. However, in the database, the paths are probably pointing to a different location.

So to fix it, change the metadata folder in your docker compose where it used to be and set the ENV to the old path: https://www.audiobookshelf.org/docs#env-configuration

@Vito0912 commented on GitHub (Jun 27, 2025): TLDR; You can't switch from Debian to Docker as far as I know. Not a bug Moving between install methods is not supported. Potential fix: Your file paths are probably not the same because the default metadata path is different for the "debian" installation method, as far as I know. You need to copy the exact file structure for all files from your old installation (including metadata). The files are in /metadata now because you restored the backup there when the docker install said they are in `/metadata`. However, in the database, the paths are probably pointing to a different location. So to fix it, change the metadata folder in your docker compose where it used to be and set the ENV to the old path: https://www.audiobookshelf.org/docs#env-configuration
Author
Owner

@derkington commented on GitHub (Jun 27, 2025):

Thank you @Vito0912 , that sorted it. All this just to preserve user stats and user logins. For anyone who might have a similar problem here is what was changed.

  1. Identify old metadata path

On my old host, Audiobookshelf stores metadata (default install path) in:

/usr/share/audiobookshelf/metadata

  1. Prepare new host

On the new host, create the same metadata directory:

sudo mkdir -p /usr/share/audiobookshelf/metadata

  1. Copy metadata

Transfer the contents of metadata from the old host to the new one.

  1. Update docker-compose.yml

In your docker-compose.yml, update or add the following entries:

Volumes section:

volumes:

  • /usr/share/audiobookshelf/metadata:/usr/share/audiobookshelf/metadata

Environment section:a

environment:

  • ABS_METADATA_PATH=/usr/share/audiobookshelf/metadata

Ensure these replace any existing references to metadata paths.

  1. Restart Audiobookshelf

docker compose down
docker compose up -d

@derkington commented on GitHub (Jun 27, 2025): Thank you @Vito0912 , that sorted it. All this just to preserve user stats and user logins. For anyone who might have a similar problem here is what was changed. 1. Identify old metadata path On my old host, Audiobookshelf stores metadata (default install path) in: /usr/share/audiobookshelf/metadata 2. Prepare new host On the new host, create the same metadata directory: sudo mkdir -p /usr/share/audiobookshelf/metadata 3. Copy metadata Transfer the contents of metadata from the old host to the new one. 4. Update docker-compose.yml In your docker-compose.yml, update or add the following entries: Volumes section: volumes: - /usr/share/audiobookshelf/metadata:/usr/share/audiobookshelf/metadata Environment section:a environment: - ABS_METADATA_PATH=/usr/share/audiobookshelf/metadata Ensure these replace any existing references to metadata paths. 5. Restart Audiobookshelf docker compose down docker compose up -d
Author
Owner

@Vito0912 commented on GitHub (Jun 27, 2025):

Step 2 is not needed. It can be ./metadata.
But it makes sense to leave it where it was, so yes

Nice you got it working

@Vito0912 commented on GitHub (Jun 27, 2025): Step 2 is not needed. It can be ./metadata. But it makes sense to leave it where it was, so yes Nice you got it working
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/audiobookshelf#2859