kubectl-debug icon indicating copy to clipboard operation
kubectl-debug copied to clipboard

工具镜像使用自定义镜像,报连接镜像仓库错误

Open a52yth opened this issue 6 years ago • 6 comments

使用kubectl debug pod_name -n ns-* --image harbor..com/base/bianque:v1.0.1 pulling image harbor..com/base/bianque:v1.0.1... message: error execute remote, Internal error occurred: error attaching to container: Error response from daemon: pull access denied for harbor.*.com/base/bianque, repository does not exist or may require 'docker login': denied: requested access to the resource is denied 已经在agent-ds文件中添加imagessecret 尝试debug的服务器也登录了该HARBOR 手动直接拉该镜像也无问题

a52yth avatar Oct 17 '19 03:10 a52yth

# use primary docker registry, set registry kubernets secret to pull image
# the default registry-secret-name is kubectl-debug-registry-secret, the default namespace is default
# please set the secret data source as {Username: <username>, Password: <password>}
kubectl-debug POD_NAME --image calmkart/netshoot:latest --registry-secret-name <k8s_secret_name> --registry-secret-namespace <namespace>

@a52yth 是否有使用最新的源码进行的编译? 在 #61 中有添加私有仓库账号密码设置。 推荐编译最新的agent和plugin使用。

calmkart avatar Oct 17 '19 12:10 calmkart

已经按照所示的方式添加,但是仍然登陆,编译的是最新版本


end port-forward...
                   error execute remote, Internal error occurred: error attaching to container: Error response from daemon: pull access denied for xxxxx, repository does not exist or may require 'docker login'

sunnoy avatar Nov 12 '19 09:11 sunnoy

@sunnoy 麻烦提供一下执行命令和secret.(密码部分请遮盖)

calmkart avatar Nov 12 '19 10:11 calmkart

from the source code , it looks like the docker pull secret key should exactly equals "authStr". kubectl create secret generic kubect-debug-secret --from-file=./authStr works for me

cpan42 avatar Nov 22 '19 07:11 cpan42

@sunnoy 麻烦提供一下执行命令和secret.(密码部分请遮盖)

cat authStr
{Username: admin, Password: xxxxxxx}

kubectl create secret generic kubect-debug-secret --from-file=./authStr

kubectl debug -n default \
        nginx-7bb7cd8db5-jr2kc \
        -a --image xxxxxxx \
        --registry-secret-name kubect-debug-secret \
        --registry-secret-namespace default \
        -c nginx \
        bash

end port-forward...
                   error execute remote, Internal error occurred: error attaching to container: Error response from daemon: pull access denied for xxxxxxxx, repository does not exist or may require 'docker login'
error: Internal error occurred: error attaching to container: Error response from daemon: pull access denied for xxxxxxxx, repository does not exist or may require 'docker login'

sunnoy avatar Dec 09 '19 08:12 sunnoy

有可能是authStr文件中的json内容要用双引号?例如: {"Username": "admin", "Password": "xxxxxxx"}

我加上双引号后就没问题了,你可以试试

kchenzhi avatar Jun 30 '20 07:06 kchenzhi