You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu环境Docker镜像构建失败:凭证错误及跨系统构建求助

解决方案

一、先解决Docker Hub凭证错误问题

错误提示no usernames for https://index.docker.io/v1/,大概率是之前Windows端Docker的凭证残留,或是Ubuntu本地Docker配置异常导致的。

  • 清理错误配置并重新登录:
    删除Ubuntu用户目录下的Docker配置文件,清除残留的错误凭证:

    rm ~/.docker/config.json
    

    然后重新登录Docker Hub:

    docker login
    

    按提示输入你的Docker Hub用户名和密码即可。

  • 确认本地Docker服务独立运行:
    确保你用的是Ubuntu本地的Docker服务,而非依赖Windows的Docker Desktop:

    sudo systemctl status docker
    

    如果服务未启动,执行启动命令:

    sudo systemctl start docker
    

    可以设置开机自启避免后续麻烦:

    sudo systemctl enable docker
    

二、处理跨系统镜像构建问题

如果你的Dockerfile里用了Windows基础镜像(比如mcr.microsoft.com/windows/servercore这类),在Ubuntu的Linux Docker环境下根本没法构建——Linux Docker只能运行Linux容器镜像。

Ubuntu上正确构建镜像的方式:

  • 替换Dockerfile的基础镜像为Linux版本,比如:
    # 用Ubuntu官方镜像做基础
    FROM ubuntu:22.04
    # 或者用更轻量的Alpine镜像
    # FROM alpine:3.18
    
    # 后续步骤都基于Linux环境编写,比如安装Nginx
    RUN apt update && apt install -y nginx
    COPY ./your-app-files /var/www/html
    CMD ["nginx", "-g", "daemon off;"]
    
  • 要是你必须构建Windows镜像,只能回到Windows系统,开启虚拟化后启动Docker Desktop,切换到Windows容器模式再执行构建。

三、验证构建

完成上述操作后,进入Dockerfile所在目录,执行构建命令:

docker build -t your-custom-image .

无报错的话就说明构建成功了。

内容的提问来源于stack exchange,提问作者Abd El Rhman Basel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 22:55:17