首页 > 解决方案 > docker build with WSL2 - 无法创建 LLB 定义:意外状态代码 403 Forbidden

问题描述

Windows 10 版本:10.0.18362.1256
Docker 桌面版本:3.6.0(最新到 2021/8/25)

来自https://github.com/docker/getting-started的Dockerfile 。

命令:docker build -t getting-started .

日志:

niaomingjian@DESKTOP-DQO:~/docker/getting-started$ docker build -t getting-started .
[+] Building 0.2s (5/5) FINISHED
 => [internal] load build definition from Dockerfile                                                               0.0s
 => => transferring dockerfile: 1.05kB                                                                             0.0s
 => [internal] load .dockerignore                                                                                  0.0s
 => => transferring context: 52B                                                                                   0.0s
 => CANCELED [internal] load metadata for docker.io/library/nginx:alpine                                           0.1s
 => CANCELED [internal] load metadata for docker.io/library/python:alpine                                          0.1s
 => ERROR [internal] load metadata for docker.io/library/node:12-alpine                                            0.1s
------
 > [internal] load metadata for docker.io/library/node:12-alpine:
------
failed to solve with frontend dockerfile.v0: failed to create LLB definition: unexpected status code [manifests 12-alpine]: 403 Forbidden

命令docker pull node:12-alpine成功。

分别拉 nginx:alpine, python:alpine, node:12-alpine 就可以了。
但是拉动过程在构建过程中不起作用。

标签: dockerwsl-2docker-desktop

解决方案


基于Jeff Gruenbaum的评论:

你在用gcr吗?403 Forbidden 表示你没有权限拉取。

尝试(如果从 gcr 中提取,您必须使用 gcloud,对吗?):

  1. gcloud config configurations list然后您会看到您的 gcp 帐户列表

  2. 将您的帐户切换到具有拉取权限的帐户gcloud config configurations activate YOUR_ACCOUNT


推荐阅读