授予访问 Synology NAS 上的 /var/run/docker.sock 的权限

授予访问 Synology NAS 上的 /var/run/docker.sock 的权限

我正在尝试关注本指南在我的 DS918+ 上正确设置 traefik。一切似乎都正常工作,但我实际上无法启动它,因为

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.39/containers/traefik/logs?follow=1&stderr=1&stdout=1&tail=100&timestamps=1: 
dial unix /var/run/docker.sock: connect: permission denied

我曾尝试sudo chmod +rwx docker.sock使用我正在使用的用户来启动docker,但无济于事。

我该如何解决这个问题?

答案1

以下对我有用:

sudo synogroup --add docker <userid>
sudo chgrp docker /var/run/docker.sock

完成此操作后,您必须从 shell 中注销以使更改生效(至少如果你以<用户 ID>运行命令时)。

答案2

在通常的 dock 实现中,你可以以 root 身份(或使用 sudo)使用 docker,或者将授权用户添加到docker组(套接字是组可写的):

ll /var/run/docker.sock
srw-rw---- 1 root docker 0 Apr 19 16:13 /var/run/docker.sock=

据我所知,默认情况下不会执行此操作,因为实际上拥有 docker 权限会赋予您 root 访问权限,所以要小心。

答案3

docker它帮助我通过运行命令sudo

docker exec -it homeassistant bash
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.24/container                                   s/homeassistant/json": dial unix /var/run/docker.sock: connect: permission denied

进而

sudo docker exec -it homeassistant bash

We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
homeassistant:/config#

有趣的是,我应该输入我的密码。我花了很多时间才弄清楚密码root

相关内容