Chanrian7 2024-03-27 00:41 采纳率: 98.6%
浏览 542
已结题

本地前端项目打包成docker镜像报错:failed open: unexpected status code https://9rqxjkrx.mirror.aliyuncs.com

本地web项目想打包成docker镜像,docker安装在云服务器上。在Dockerfile同级目录下运行命令:docker build -t chen/chatgpt-web-app:1.7 . 出现以下报错信息:

=> ERROR [build 1/6] FROM docker.io/library/node:20-alpine@sha256:bf  761.8s
 => => resolve docker.io/library/node:20-alpine@sha256:bf77dc26e48ea95f  0.1s
......此处省略一些加载过程
 => => extracting sha256:9f16480e2ff54481cb1ea1553429bf399e8269985ab0de  4.1s
 => => extracting sha256:092226d52cac3f544d7973fe7ba4416bc2cd5b69e40168  0.2s
 => [internal] load build context                                       87.7s
 => => transferring context: 661.24MB                                   87.2s
------
 > [build 1/6] FROM docker.io/library/node:20-alpine@sha256:bf77dc26e48ea95fca9d1aceb5acfa69d2e546b765ec2abfb502975f1a2d4def:
------
Dockerfile:2
--------------------
   1 |     #使用Node.js20Alpine作为基础镜像
   2 | >>> FROM node:20-alpine as build
   3 |     
   4 |     ENV NEXT_PUBLIC_API_HOST_URL=""
--------------------
Dockerfile:22
--------------------
  20 |     
  21 |     #使用多阶段构建
  22 | >>> FROM node:20-alpine
  23 |     WORKDIR /app
  24 |     
--------------------
ERROR: failed to solve: failed to copy: httpReadSeeker: failed open: unexpected status code https://9rqxjkrx.mirror.aliyuncs.com/v2/library/node/blobs/sha256:0493dfb2ff9c5bd770291dc14d4e30caff25c72bcdfbea04e9bf2f4013e21db0?ns=docker.io: 500 Internal Server Error - Server message: unknown: unknown error

出现错误:ERROR [build 1/6] FROM docker.io/library/node:20-alpine@sha256:bf 761.8s
ERROR: failed to solve: failed to copy: httpReadSeeker: failed open: unexpected status code https://9rqxjkrx.mirror.aliyuncs.com/v2/library/node/blobs/sha256:0493dfb2ff9c5bd770291dc14d4e30caff25c72bcdfbea04e9bf2f4013e21db0?ns=docker.io: 500 Internal Server Error - Server message: unknown: unknown error

Dockerfile内容是:

#使用Node.js20Alpine作为基础镜像
FROM node:20-alpine as build

ENV NEXT_PUBLIC_API_HOST_URL=""

#设置工作目录
WORKDIR /app

#复制package.json和package-lock.json到容器中
COPY package*.json ./

#安装依赖
RUN npm install

#将应用程序代码复制到容器中
COPY . .

#构建TypeScript代码
RUN npm run build

#使用多阶段构建
FROM node:20-alpine
WORKDIR /app

#从构建阶段复制构建的产物
COPY --from=build /app ./

#暴露3001端口
EXPOSE 3001

#启动应用程序
CMD["npm","start"]

请问这是什么情况,该如何解决呢?

  • 写回答

4条回答 默认 最新

  • 专家-皆知 2024-03-27 00:41
    关注

    引自免费微信小程序:皆我百晓生

    根据你提供的错误信息,看起来是在尝试从Docker Hub拉取Node.js 20 Alpine基础镜像时发生了问题。具体来说,错误信息中的URL "https://9rqxjkrx.mirror.aliyuncs.com/v2/library/node/blobs/sha256:0493dfb2ff9c5bd770291dc14d4e30caff25c72bcdfbea04e9bf2f4013e21db0?ns=docker.io" 返回了一个 500 Internal Server Error,提示“未知错误”。

    这可能是因为该镜像的下载受到了限制,或者因为你的网络连接有问题。你可以尝试以下几种解决方法:

    1. 更换基础镜像:尝试使用其他来源的基础镜像,比如官方的 Node.js 镜像。你可以使用以下命令尝试从 Node.js 官方镜像拉取镜像:
    docker pull node:14
    
    1. 更换源:如果上述方法无法解决问题,你可以尝试更换下载源。你可以将 docker.io 更改为其他可用的源,比如 docker.io/library/node。使用以下命令更换源为 Docker Hub 官方源:
    docker config set-image-registry https://hub.docker.com/v2/
    
    1. 更换网络:如果你在中国大陆地区,可能因为网络问题导致无法下载镜像。你可以尝试更换网络环境,或者使用 VPN 等工具访问其他网络。

    希望这些建议能对你有所帮助。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 4月4日
  • 已采纳回答 3月27日
  • 创建了问题 3月27日