GGV2:无法运行Docker容器:docker.sock - 无权限访问。

0

【以下的问题经过翻译处理】 一个月前这还可以正常工作,但现在出现了以下问题:

当Greengrass尝试通过“docker load -i [...]”安装docker镜像时,我会遇到以下错误:

2021-04-14T15:24:51.673Z [WARN] (Copier) xxxxxxxxx: stderr. Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.24/images/load?quiet=1: dial unix /var/run/docker.sock: connect: permission denied. {scriptName=services.xxxxxxxxx.lifecycle.Install.Script, serviceName=xxxxxxxxx, currentState=NEW} 2021-04-14T15:24:51.676Z [WARN] (pool-2-thread-17) xxxxxxxxx: shell-runner-error. {scriptName=services.xxxxxxxxx.lifecycle.Install.Script, serviceName=xxxxxxxxx, currentState=NEW, command=["docker load -i /greengrass/v2/packages/artifacts/xxxxxxxxx/1...."]}

我尝试过:

·将Nucleus 2.0.3恢复到以前的版本,但似乎出现了同样的问题。

·唯一解决这个问题的方法是将docker.sock设置为全局可写方式...但这不适用于生产。

更多信息:

·Greengrass以root权限运行。

·我可以在shell中自己正常运行这些命令。

·我自己启动的特权容器可以正常访问docker.sock。

·在我的arm和amd64设备上都会出现这个问题。

我不知道要检查Greengrass尝试以什么用户运行docker load命令,但我认为它是自己的用户。

有人遇到过类似的问题吗?

我感到很困惑,因为以前可以工作,但我没有改变任何东西。

profile picture
EXPERTE
gefragt vor 6 Monaten25 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 你好 QuantumLove,

错误出现在你的“安装”步骤中。你能否尝试在“运行”步骤中为“安装”设置“RequiresPrivilege”: true?

谢谢!

profile picture
EXPERTE
beantwortet vor 6 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen