Отказ в разрешении при подключении к /var/run/docker.sock
Я пытаюсь использовать контейнер сторожевой башни (https://containrrr.dev/watchtower/ ) в RHEL 8.0 с помощью podman. Поскольку docker официально не поддерживается RHEL 8.0, я не устанавливал docker-engine на эту виртуальную машину. Я запустил службу podman.socket, а podman.sock находится в /run/podman/podman.sock.
когда я даю
podman-compose up -d
все остальные контейнеры запускаются успешно без ошибок, но контейнер сторожевой башни завершается с кодом (1).
Это журналы, созданные контейнером сторожевой башни:
time="2022-01-20T13:45:50Z" level=error msg="Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get \"http://%2Fvar%2Frun%2Fdocker.sock/v1.25/containers/json?filters=%7B%22status%22%3A%7B%22running%22%3Atrue%7D%7D&limit=0\": dial unix /var/run/docker.sock: connect: permission denied"
0
Я дал разрешение на выполнение файлу /run/podman/podman.sock, но все еще получаю эту ошибку.
Фрагмент файла docker-compose.yml со службой сторожевой башни.
watchtower:
image: index.docker.io/containrrr/watchtower:1.3.0
volumes:
- /run/podman/podman.sock:/var/run/docker.sock
Поскольку у меня нет docker.sock, я монтирую podman.sock в docker.sock, чтобы сторожевая башня могла взаимодействовать с docker API.
Как я могу это исправить? (я не хочу устанавливать докер)
1 ответ
Сокет podman по умолчанию — root:root 660. Возможно, вам придется создать группу и/или изменить сокет.