首页 > 其他 > 详细

「Docker」- ...dial unix /var/run/docker.sock: connect: permission denied... @20210411

时间:2021-04-11 21:48:16      阅读:29      评论:0      收藏:0      [点我收藏+]

问题描述

当使用非 ROOT 用户执行 docker 命令时,

产生如下错误信息:

# docker inspect -f . node:14-alpine
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.40/containers/node:14-alpine/json: dial unix /var/run/docker.sock: connect: permission denied

或者如下错误信息:

Post http:///var/run/docker.sock/v1.19/auth: dial unix /var/run/docker.sock: permission denied. Are you trying to connect to a TLS-enabled daemon without TLS?

问题原因

这些都是同类问题,即非 Root 用户管理 Docker 服务时权限不足。

在 Docker 进程运行时,使用 Unix socket 文件,它由 root:root 所有,所以只有 root 能访问。

如果非 root 用户想要管理,则需要使用 sudo 命令,或者使用其他方法(见下文)。

解决办法

# groupadd docker
# usermod -aG docker "target user"
# systemctl restart docker.service

注意事项

使用 docker 组所授予的权限等同于 root 用户。对系统安全的影响,参考 Docker daemon attack surface 文档

参考文献

Manage Docker as a non-root user


「Docker」- ...dial unix /var/run/docker.sock: connect: permission denied... @20210411

原文:https://www.cnblogs.com/k4nz/p/14645013.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!