首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Azure ACS上配置Kubernetes以从Artifactory拉取图像

在Azure ACS上配置Kubernetes以从Artifactory拉取图像
EN

Stack Overflow用户
提问于 2017-07-13 22:02:32
回答 1查看 741关注 0票数 0

我尝试将Kubernetes配置为从我们的私有Artifactory Docker存储库中提取图像。

首先,我使用kubectl配置了一个密钥:

代码语言:javascript
复制
kubectl create secret docker-registry artifactorysecret --docker-server=ourcompany.jfrog.io/path/list/docker-repo/ --docker-username=artifactory-user --docker-password=artipwd --docker-email=myemail

使用kubectl创建pod后,

代码语言:javascript
复制
apiVersion: v1
kind: Pod
metadata:
  name: base-infra
spec:
  containers:
    - name: api-gateway
      image: api-gateway
  imagePullSecrets:
    - name: artifactorysecret

我在Kubernetes中得到一个"ImagePullBackOff“错误:

代码语言:javascript
复制
 3m            3m              1       default-scheduler                                           Normal
Scheduled       Successfully assigned consort-base-infra to k8s-agent-ab2f29b2-2
  3m            0s              5       kubelet, k8s-agent-ab2f29b2-2   spec.containers{api-gateway}    Normal
Pulling         pulling image "api-gateway"
  2m            <invalid>       5       kubelet, k8s-agent-ab2f29b2-2   spec.containers{api-gateway}    Warning
Failed          Failed to pull image "api-gateway": rpc error: code = 2 desc = Error: image library/api-gateway:latest not found
  2m            <invalid>       5       kubelet, k8s-agent-ab2f29b2-2                               Warning
FailedSync      Error syncing pod, skipping: failed to "StartContainer" for "api-gateway" with ErrImagePull: "rpc error: code = 2 desc = Error: image library/api-gateway:latest not found"

  2m    <invalid>       17      kubelet, k8s-agent-ab2f29b2-2   spec.containers{api-gateway}    Normal  BackOff
Back-off pulling image "api-gateway"
  2m    <invalid>       17      kubelet, k8s-agent-ab2f29b2-2                                   Warning FailedSync
Error syncing pod, skipping: failed to "StartContainer" for "api-gateway" with ImagePullBackOff: "Back-off pulling image \"api-gateway\""

当然,在repo中有一个最新版本。我不知道我错过了什么。看起来Kubernetes可以登录到repo...

EN

回答 1

Stack Overflow用户

发布于 2017-07-14 23:31:41

好的--多亏了Pull image Azure Container Registry - Kubernetes,我找到了连接Artifactory的方法

有两件事需要注意:

1)在secret定义中,不要忘记server-attribute中的https://:

代码语言:javascript
复制
kubectl create secret docker-registry regsecret --docker-server=https://our-repo.jfrog.io --docker-username=myuser --docker-password=<your-pword> --docker-email=<your-email>

2)在部署描述符中,使用完整的镜像路径并指定密钥(或将其附加到默认ServiceAccount):

代码语言:javascript
复制
apiVersion: v1
kind: Pod
metadata:
  name: consort-base-infra-art
spec:
  containers:
    - name: api-gateway
      image: our-repo.jfrog.io/api-gateway
  imagePullSecrets:
    - name: regsecret
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45082969

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档