我想以非 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,现在一切正常。