FAQ¶
Estimated time to read: 2 minutes
本文档记录实验过程中同学们遇到的常见问题及解决办法,会频繁更新。如果你遇到问题,可以先来本文档找找是不是已经存在。
Lab 0¶
无法连接到 Docker 守护进程¶
-
现象:
-
原因:
Docker 的工作原理是客户端-服务器模式。在终端中执行的是 Docker CLI 客户端,它需要连接到服务器即 Docker Daemon(守护进程)来完成实际的工作,比如拉取、启动容器等。错误信息表明 Docker Daemon 没有启动。
该问题常见于在 WSL 中初次安装 Docker Engine 的场景,此时 Docker Daemon 可能尚未自动启动。
-
解决办法:
-
Linux:
在现代 Linux 发行版中,一般使用 systemd 来管理系统服务。其中,
systemctl
用于管理服务,journalctl
用于管理日志。 -
WSL:
如果你运行的是较老版本的 WSL,则 systemd 可能不可用。推荐你按照 Use systemd to manage Linux services with WSL | Microsoft Learn 的指引升级 WSL 版本,启用 systemd。
如果你不想升级,重启 WSL 应该也能解决问题。在 Windows 终端中执行:
然后重新打开 WSL。
-
macOS:
确保你启动了 Docker Desktop for Mac。
-
拉取容器时 ZJU Git EOF¶
-
现象:
-
原因:
网络问题,Docker Daemon 无法连接到 ZJU Git。这往往是由于代理设置不正确导致的。
使用 Windows Docker Desktop 的同学反映,即使自己关闭了 Clash,代理设置也会残留在 Docker Desktop 中,运行
docker info
可以看到下面的内容: -
解决办法:
- Windows Docker Desktop 用户:在 Docker Desktop 设置界面进入
Resources
->Proxies
,打开Manual proxy configuration
,将所有代理设置留空,然后点击Apply
,重启 Docker Desktop。
- Windows Docker Desktop 用户:在 Docker Desktop 设置界面进入
Git not a valid repository name¶
-
现象:
-
原因:
从报错可以看到是 GitHub 返回的错误,但我们的仓库在 ZJU Git。这一般是 Git 配置错误导致的,运行
git config --list
检查是否有错误的配置。目前发现有错误配置如下:
-
解决办法:
删除相关错误配置: