问题描述
发生了什么:我在我的 Kubernetes 集群(操作系统:REHL7.8)中设置了秘密(在 ubuntu18.04 集群中有效),并在尝试创建一个从我的docker hub 私有仓库。以下是我创建秘密的命令:
kubectl create secret docker-registry regcred \
--docker-server=index.docker.io \
--docker-username=my-username \
--docker-password=my-password \
--docker-email=my-email
这是我用于创建 pod 的 yaml 文件:
apiVersion: v1
kind: Pod
metadata:
name: test-reg
spec:
containers:
- name: test-reg-container
image: docker.io/memo40k/test:v1
imagePullSecrets:
- name: regcred
而且我在创建 pod 时总是得到以下响应:
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled 13s default-scheduler Successfully assigned default/test-reg to wistron-4
Normal Pulling 0s kubelet Pulling image "docker.io/repo-name/test:v1"
Warning Failed <invalid> kubelet Failed to pull image "docker.io/repo-name/test:v1": rpc error: code = Unknown desc = repository docker.io/memo40k/test not found: does not exist or no pull access
Warning Failed <invalid> kubelet Error: ErrImagePull
Normal BackOff <invalid> kubelet Back-off pulling image "docker.io/repo-name/test:v1"
Warning Failed <invalid> kubelet Error: ImagePullBackOff
我也试过在 docker 登录后直接 docker pull 目标镜像,效果很好。
你期望发生的事情:Pod 应该能够从 docker-hub 私有仓库中拉取镜像
如何重现它(尽可能少且精确):使用 RHEL 7.8 构建一个单节点 k8s 集群,并尝试使用私有存储库映像创建 pod
还有什么我们需要知道的吗?:
环境:
- Kubernetes 版本(使用
kubectl version
):v1.18.9 - 云提供商或硬件配置:
- 操作系统(例如:
cat /etc/os-release
):RHEL 7.8 - 内核(例如
uname -a
):3.10.0-1127.el7.x86_64 - 安装工具:kubeadm
- 网络插件和版本(如果这是与网络相关的错误):flannel v0.13.1
预先感谢您的大力帮助。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)