首页 > 解决方案 > 在不使用 sudo 的情况下运行 docker-compose --build

问题描述

似乎我可以运行每个 docker 命令,除了--build没有sudo. 我注意到这一点是因为启动我的服务的脚本在最新部署期间突然失败。该脚本包括命令

docker-compose up -d --build

并且它一直保持不变并且工作很长时间没有问题,但显然系统中的某些东西一定已经改变了。我尝试按照 Stack Overflow 和其他网站上许多类似问题中概述的步骤进行操作,建议的解决方案是将用户添加到 docker 组并重新启动服务。例如,来自 Docker 自己的论坛。但问题还是一样:

$ docker-compose up --build
ERROR: Couldn't connect to Docker daemon at http+docker://localunixsocket - is it running?

我也试过

sudo chown $USER /var/run/docker.sock

这也不起作用。但问题只出现在--build,我可以运行其他 docker 命令,例如docker-compose up或任何其他命令,例如docker psetc,而不会出现任何错误。问题可能出在哪里?

标签: dockerdocker-compose

解决方案


根据文档

  1. 创建泊坞窗组。
    sudo groupadd docker
  2. 将您的用户添加到 docker 组。
    sudo usermod -aG docker $USER

注销并重新登录,以便重新评估您的组成员身份。


推荐阅读