按照以下链接后,我可以从我的Pod中成功地在Docker Hub中提取私有图像:Pull from Private repo
但是,尝试拉出Docker Store图像似乎不起作用。
我可以使用docker pull store/oracle/database-instantclient:12.2.0.1
在我的桌面上本地提取此商店图片,并将相同的凭据作为保密存储在Kubernetes中。
从Kubernetes Pods中提取Docker Store映像的正确方法是什么?
我的私人仓库/图片的工作pod配置:
image: index.docker.io/<privaterepo>/<privateimage>
我在我的pod配置中尝试了以下操作,没有工作:
image: store/oracle/database-instantclient:12.2.0.1
image: oracle/database-instantclient:12.2.0.1
image: index.docker.io/oracle/database-instantclient:12.2.0.1
image: index.docker.io/store/oracle/database-instantclient:12.2.0.1
以上所有尝试都会返回相同的错误(使用不同的图像路径):
Failed to pull image "store/oracle/database-instantclient:12.2.0.1": rpc error: code = Unknown desc = Error response from daemon: repository store/oracle/database-instantclient not found: does not exist or no pull access
答案 0 :(得分:1)
我设法通过我的docker登录设置秘密在minikube中运行:
kubectl create secret docker-registry dockerstore \
--docker-server=index.docker.io/v1/ \
--docker-username={docker store username} \
--docker-password={docker store password} \
--docker-email={your email}
然后kubectl create -f testreplicaset.yaml
on
#testreplicaset.yaml
apiVersion: apps/v1
kind: ReplicaSet
metadata:
name: oracle-instantclient
labels:
app: oracle-instantclient
spec:
replicas: 1
selector:
matchLabels:
app: oracle-instantclient
template:
metadata:
labels:
app: oracle-instantclient
spec:
containers:
- name: oracle-instantclient-container
image: store/oracle/database-instantclient:12.2.0.1
env:
ports:
imagePullSecrets:
- name: dockerstore
我无法准确地说出它为什么不适合你,但如果你进入你的kubernetes节点并在那里尝试docker pull
,它可能会提供更多线索。