Docker 桌面中的默认 docker 注册表
Default docker registry in Docker desktop
我正在通过 jib 和 skaffold 构建 docker 图像。当我在 skaffold build.artifacts.image 中提供图像键 service-1
时,会创建一个图像(名为 'service-1:SHA256' 的图像),我可以通过 docker image ls
看到它。然后在 skaffold deploy 中,我提供了 kubectl 命令,它在其中拾取创建的图像就好了。在我的 deployment.yaml 清单文件中,我只指定 spec.template.spec.containers.image :service-1
上面的方法没问题,但是我想做helm。我已经创建了掌舵图。但是 helm 无法从我的本地 docker 守护程序存储库中获取任何图像。如果我在看到 docker image ls
时指定 image:service-1:SHA256,我会得到 ErrImagePull.
为什么 helm 无法从我的本地 docker 注册表中选择图像。我也无法 docker 拉取 service-1:sha256。
正在使用的默认 docker 注册表是什么,kubectl 的 skaffold 如何能够正确拉取镜像,而 helm 和 docker 不能。
我也尝试了 skaffold+helm,但遇到了同样的问题。
apiVersion: skaffold/v2alpha3
kind: Config
metadata:
name: service-1
build:
artifacts:
- image: service-1
jib:
project: com.sample.app:service-1
args:
- -Dmaven.test.skip
deploy:
helm:
releases:
- name: service-1
chartPath: service-1-chart
values:
image: service-1
valuesFiles:
- service-1-chart/values.yaml
在 pod describe 期间获取以下内容
Normal Scheduled 75s default-scheduler Successfully assigned default/service1-df75c747b-g6qfm to docker-desktop
Normal Pulling 29s (x3 over 74s) kubelet, docker-desktop Pulling image "service-1:e7d693388f7f26a062257408e3cfb5904da4749342729802eb9ac65fab6d2f31"
Warning Failed 27s (x3 over 73s) kubelet, docker-desktop Failed to pull image "service-1:e7d693388f7f26a062257408e3cfb5904da4749342729802eb9ac65fab6d2f31": rpc error: code = Unknown desc = Error response from daemon: pull access denied for service-1, repository does not exist or may require 'docker login': denied: requested access to the resource is denied
Warning Failed 27s (x3 over 73s) kubelet, docker-desktop Error: ErrImagePull
Normal BackOff 2s (x4 over 72s) kubelet, docker-desktop Back-off pulling image "service-1:e7d693388f7f26a062257408e3cfb5904da4749342729802eb9ac65fab6d2f31"
Warning Failed 2s (x4 over 72s) kubelet, docker-desktop Error: ImagePullBackOff
当我尝试做 docker 拉:
Error response from daemon: pull access denied for service-1, repository does not exist or may require 'docker login': denied: requested access to the resource is denied
如果您不想使用 Docker 注册表,而是直接从您的 Docker 守护程序 运行 镜像,则添加 imagePullPolicy: Never
.
我正在通过 jib 和 skaffold 构建 docker 图像。当我在 skaffold build.artifacts.image 中提供图像键 service-1
时,会创建一个图像(名为 'service-1:SHA256' 的图像),我可以通过 docker image ls
看到它。然后在 skaffold deploy 中,我提供了 kubectl 命令,它在其中拾取创建的图像就好了。在我的 deployment.yaml 清单文件中,我只指定 spec.template.spec.containers.image :service-1
上面的方法没问题,但是我想做helm。我已经创建了掌舵图。但是 helm 无法从我的本地 docker 守护程序存储库中获取任何图像。如果我在看到 docker image ls
时指定 image:service-1:SHA256,我会得到 ErrImagePull.
为什么 helm 无法从我的本地 docker 注册表中选择图像。我也无法 docker 拉取 service-1:sha256。
正在使用的默认 docker 注册表是什么,kubectl 的 skaffold 如何能够正确拉取镜像,而 helm 和 docker 不能。
我也尝试了 skaffold+helm,但遇到了同样的问题。
apiVersion: skaffold/v2alpha3
kind: Config
metadata:
name: service-1
build:
artifacts:
- image: service-1
jib:
project: com.sample.app:service-1
args:
- -Dmaven.test.skip
deploy:
helm:
releases:
- name: service-1
chartPath: service-1-chart
values:
image: service-1
valuesFiles:
- service-1-chart/values.yaml
在 pod describe 期间获取以下内容
Normal Scheduled 75s default-scheduler Successfully assigned default/service1-df75c747b-g6qfm to docker-desktop
Normal Pulling 29s (x3 over 74s) kubelet, docker-desktop Pulling image "service-1:e7d693388f7f26a062257408e3cfb5904da4749342729802eb9ac65fab6d2f31"
Warning Failed 27s (x3 over 73s) kubelet, docker-desktop Failed to pull image "service-1:e7d693388f7f26a062257408e3cfb5904da4749342729802eb9ac65fab6d2f31": rpc error: code = Unknown desc = Error response from daemon: pull access denied for service-1, repository does not exist or may require 'docker login': denied: requested access to the resource is denied
Warning Failed 27s (x3 over 73s) kubelet, docker-desktop Error: ErrImagePull
Normal BackOff 2s (x4 over 72s) kubelet, docker-desktop Back-off pulling image "service-1:e7d693388f7f26a062257408e3cfb5904da4749342729802eb9ac65fab6d2f31"
Warning Failed 2s (x4 over 72s) kubelet, docker-desktop Error: ImagePullBackOff
当我尝试做 docker 拉:
Error response from daemon: pull access denied for service-1, repository does not exist or may require 'docker login': denied: requested access to the resource is denied
如果您不想使用 Docker 注册表,而是直接从您的 Docker 守护程序 运行 镜像,则添加 imagePullPolicy: Never
.