First thank you to all contributors and maintainers that make this project possible. I've been a user of OMV for a long time as a home server and it's been an awesome experience overall!
Recently I ran into a edge case issue I think regarding "/var/run/docker.sock". I run around 15 docker containers for different services via the OMV compose plugin and those all work fine and can interact with each other no problem via the filesystem permissions and "docker" user, so I'm certain that's setup correctly.
But I recently started to use Homarr as a dashboard and whilst it works fine container/port wise and things like the OMV integration work well, the docker integration doesn't. It communicates via "/var/run/docker.sock" to get all the actively running containers and such, but in my case it fails with this error due to "/var/run/docker.sock" permissions.
2025-08-05T05:46:48.951Z error: tRPC Error with query on 'docker.getContainers'
at Object.onError (/app/apps/nextjs/.next/server/app/api/trpc/[trpc]/route.js:5:5083)
at Object.onError (/app/apps/nextjs/.next/server/app/api/trpc/[trpc]/route.js:5:4123)
at /app/apps/nextjs/.next/server/app/api/trpc/[trpc]/route.js:1:26363
at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
at async /app/apps/nextjs/.next/server/app/api/trpc/[trpc]/route.js:5:1389
caused by Error: connect EACCES /var/run/docker.sock errno="-13" code="EACCES" syscall="connect" address="/var/run/docker.sock"
at PipeConnectWrap.afterConnect [as oncomplete] (node:net:1637:16)
at PipeConnectWrap.callbackTrampoline (node:internal/async_hooks:130:17)
My docker-compose for Homarr is as below;
services:
homarr:
image: ghcr.io/homarr-labs/homarr:latest
container_name: homarr
restart: unless-stopped
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=${TZ}
- SECRET_ENCRYPTION_KEY=${SECRET_ENCRYPTION_KEY}
ports:
- 7575:7575
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- CHANGE_TO_COMPOSE_DATA_PATH/homarr:/appdata
Display More
PUID = 1001 (docker user), and PGID = 100 (users group)
If I check the permissions of the "/var/run/docker.sock" itself I get this;
If I manually SSH into the server and change /var/run/docker.sock to have docker:docker permissions, then suddenly it works, but this only stays until I restart the server and then it will reset back to root:docker and I have to manually SSH in and change it again.
What is the intended/expected way to set this up? I tried looking through the docker wiki for OMV but it seems this isn't really documented beyond being included in a nextcloud example docker-compose yaml. I did notice in the compose plugin settings "owner of directories and files" and "group of directories and files" are both set to root for me, but also referencing the OMV docker wiki it seems this is also what it's set as there as well so not really sure if that is what is causing the issue?
Any help is greatly appreciated!