Docker构建报错:无法加载python:3.9-alpine3.13镜像元数据如何解决?
Docker构建失败:无法加载python:3.9-alpine3.13镜像元数据
问题描述
Dockerfile内容:
FROM python:3.9-alpine3.13 LABEL maintainer="rohitgajula" ENV PYTHONUNBUFFERED 1 COPY ./requirements.txt /tmp/requirements.txt COPY ./app /app WORKDIR /app EXPOSE 8000 RUN python -m venv /py && \ /py/bin/pip install --upgrade pip && \ /py/bin/pip install -r /tmp/requirements.txt && \ rm -rf /tmp && \ adduser \ --disabled-password \ --no-create-home \ django-user ENV PATH="/py/bin:$PATH" USER django-user
构建时错误信息:
[+] Building 1.3s (4/4) FINISHED docker:desktop-linux => [internal] load .dockerignore 0.0s => => transferring context: 191B 0.0s => [internal] load build definition from Dockerfile 0.0s => => transferring dockerfile: 492B 0.0s => ERROR [internal] load metadata for docker.io/library/python:3.9-alpine3.13 1.3s => [auth] library/python:pull token for registry-1.docker.io 0.0s ------ > [internal] load metadata for docker.io/library/python:3.9-alpine3.13: ------ Dockerfile:1 -------------------- 1 | >>> FROM python:3.9-alpine3.13 2 | LABEL maintainer="rohitgajula"
解决方案
更换镜像标签:python:3.9-alpine3.13的镜像标签可能已被移除或停止维护,将Dockerfile第一行替换为以下任一标签:
FROM python:3.9-alpine3.17 # 稳定兼容的alpine版本 # 或者 FROM python:3.9-alpine # 自动拉取与Python3.9兼容的最新alpine版本测试手动拉取镜像:执行以下命令确认是否能正常拉取镜像,排查网络问题:
docker pull python:3.9-alpine3.13如果拉取失败,检查本地网络是否能访问Docker Hub,或配置代理。
清理Docker缓存:缓存异常可能导致元数据加载失败,执行命令清理后重新构建:
docker system prune -a配置国内镜像源:国内网络访问Docker Hub较慢时,添加国内镜像源:
- 创建或修改Docker的
daemon.json文件(Linux路径:/etc/docker/daemon.json,Windows/macOS在Docker设置的Docker Engine中编辑) - 添加以下内容:
{ "registry-mirrors": ["https://hub-mirror.c.163.com", "https://mirror.aliyuncs.com"] } - 重启Docker服务后重新构建。
- 创建或修改Docker的
内容的提问来源于stack exchange,提问作者Rohit Gajula
相关产品推荐
相关产品推荐

