docker挂载的应用,在容器内部报错permission denied while trying to connect to the Docker daemon socket

报错原因
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/containers/json”: dial unix /var/run/docker.sock: connect: permission denied

在这里插入图片描述
docker-compose挂载的目录为内部的地址,在内部直接可以使用docker进行打包镜像
在这里插入图片描述
报错是权限原因,配置权限,在宿主机内部配置其他用户读写的权限
chmod o+wr /var/run/docker.sock

在这里插入图片描述
配置权限挂载的宿主机的文件,外部修改完,内部直接就会更新,进入容器,docker命令可以正常使用
在这里插入图片描述

"permission denied while trying to connect to the Docker daemon socket"错误通常是由于当前用户没有足够的权限来访问Docker守护进程的套接字文件导致的。这个错误可能有以下几个原因: 1. 用户权限不足:如果您没有以root用户或者具有sudo权限的用户身份运行Docker命令,可能会导致权限不足的错误。请确保您具有足够的权限来执行Docker命令。 2. 用户未添加到docker组:在某些Linux发行版中,默认情况下,只有添加到docker用户组的用户才能访问Docker守护进程。如果您尚未将当前用户添加到docker组,请使用以下命令将其添加到docker组中: ``` sudo usermod -aG docker your_username ``` 注意将"your_username"替换为您的用户名。 3. Docker守护进程未启动:如果Docker守护进程未运行,则无法连接到它的套接字文件。请确保Docker守护进程正在运行。您可以使用以下命令检查Docker守护进程的状态: ``` sudo systemctl status docker ``` 如果它没有运行,请使用以下命令启动Docker守护进程: ``` sudo systemctl start docker ``` 4. 套接字文件权限问题:检查Docker守护进程套接字文件的权限设置是否正确。默认情况下,套接字文件的权限应该是`rw-rw----`,所有者为root用户,组为docker。您可以使用以下命令检查套接字文件的权限: ``` ls -l /var/run/docker.sock ``` 如果权限不正确,您可以使用以下命令更改它: ``` sudo chmod 660 /var/run/docker.sock sudo chown root:docker /var/run/docker.sock ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值