如何在没有root权限的情况下运行docker-compose up?

如何在没有root权限的情况下运行docker-compose up?

我想以非 root 用户身份运行 docker-compose up。当我执行:

sudo docker-compose up

它运行良好,但是当我执行时:

docker-compose up

显示错误:

 TITLE>Network Error</TITLE>
</HEAD>
<BODY>
<FONT face="Helvetica">
<big><strong></strong></big><BR>
</FONT>
<blockquote>
<TABLE border=0 cellPadding=1 width="80%">
<TR><TD>
<FONT face="Helvetica">
<big>Network Error (tcp_error)</big>
<BR>
<BR>
</FONT>
</TD></TR>
<TR><TD>
<FONT face="Helvetica">
A communication error occurred: ""
</FONT>
</TD></TR>
<TR><TD>
<FONT face="Helvetica">
The Web Server may be down, too busy, or experiencing other problems preventing it from responding to requests. You may wish to try again at a later time.
</FONT>
</TD></TR>
<TR><TD>
<FONT face="Helvetica" SIZE=2>
<BR>
For assistance, contact your network support team.
</FONT>
</TD></TR>
</TABLE>
</blockquote>
</FONT>
</BODY></HTML>

我已将用户添加到 docker 组,并且 docker 命令无需 sudo 即可运行,但是 docker-compose 却带来了麻烦。

答案1

其中一个原因是当前用户尚未添加到docker组。要检查当前用户是否在docker组中,我们可以使用:

cat /etc/group | grep docker

如果我们在上一个命令的输出中没有看到当前用户,我们将使用此命令添加它:

sudo gpasswd -a $USER docker

最后,我们需要使用以下命令重新启动 docker 服务:

sudo service docker restart

答案2

我找到了解决方案。为非 root 用户设置了无效代理。我编辑了 /etc/profile,现在一切正常。

相关内容