2.0 KiB
2.0 KiB
Docker 拉取失败:配置镜像加速
构建时若出现 failed to fetch oauth token、dial tcp ... connectex 等无法连接 auth.docker.io 的错误,多半是网络无法访问 Docker Hub。
本仓库已做的默认处理
- admin 与 backend 的 Dockerfile 已默认使用国内镜像源拉取基础镜像:
docker.mirrors.ustc.edu.cn/library/node:20-alpine、docker.mirrors.ustc.edu.cn/library/python:3.12-slim。多数情况下可直接执行docker-compose up -d构建。 - 若你环境能直连 Docker Hub、希望用官方镜像,可执行:
docker-compose build --build-arg NODE_IMAGE=node:20-alpine --build-arg PYTHON_IMAGE=python:3.12-slim docker-compose up -d
若仍报错(例如 USTC 镜像在你网络不可用),可再按下面方式配置 Docker daemon 的镜像加速。
方式一:Docker Desktop(推荐)
- 打开 Docker Desktop → Settings(设置)→ Docker Engine。
- 在 JSON 里为
"registry-mirrors"增加一个镜像地址,例如:{ "registry-mirrors": [ "https://docker.mirrors.ustc.edu.cn", "https://hub-mirror.c.163.com" ] } - 点击 Apply & Restart,等待重启完成。
- 回到项目根目录重新执行:
docker-compose up -d。
方式二:Linux 直接改 daemon 配置
编辑 /etc/docker/daemon.json(没有则新建),加入:
{
"registry-mirrors": [
"https://docker.mirrors.ustc.edu.cn",
"https://hub-mirror.c.163.com"
]
}
然后执行:
sudo systemctl daemon-reload
sudo systemctl restart docker
镜像源说明
- 上面为常见公共镜像,可用性以当前网络为准。
- 若使用阿里云 ECS,可在容器镜像服务里申请专属加速地址,替换到
registry-mirrors中,通常更稳定。
配置完成后再次运行:
docker-compose up -d
若仍失败,可尝试开代理或换网络环境后再试。