I set up Docker and Portainer using their guides, and my other containers work normally, but Seerr fails with `Error: EACCES: permission denied, mkdir '/app/config/logs/'`. I'm still new to Docker and I'm not sure which host directory needs its permissions changed. The container uses `./seerr:/app/config`, with PUID and PGID intended to be 1000, and the compose file runs Seerr on port 5055. What should I check or change to fix the permissions safely?
3 Answers
Because the volume is written as `./seerr:/app/config`, `./seerr` is a relative path resolved from the directory where the Compose project runs. It is not the root-level `/seerr` directory. Make sure that folder exists in the expected location, is writable by UID/GID 1000:1000, and then recreate or restart the container so Seerr can create `/app/config/logs`.
This usually means the host directory mounted at `./seerr` isn’t writable by the user inside the container. From the directory containing your compose file, check it with `ls -la ./seerr`, then make sure that directory is owned by UID 1000 and GID 1000. For example: `sudo chown -R 1000:1000 ./seerr`. Don’t blindly change ownership of your entire `/data` tree unless you’re certain every application should use the same owner; just update the specific Seerr app-data directory first.
Also double-check the environment variables. Your compose snippet has `PGID=${PUID}`, which makes the group ID use the PUID value. It should probably be `PGID=${PGID}` if your `.env` file defines separate PUID and PGID values. The values passed to the container need to match the owner and group of the host directory.

I wasn’t sure which directory the mount referred to, but I think I found the Seerr app-data folder. I’ll change ownership on that folder rather than the whole data structure.