6

Czy ktoś ma jakieś rady, w jaki sposób wyciągnąć z pojemnika podczas Azure rejestru uruchomiony w ciągu Azure usługi pojemnika (kubernetes)Pull obraz Azure Pojemnik Registry - Kubernetes

Próbowałem Przykładowa instalacja jak poniżej ale przyciąganie obraz nie działa:

kind: Deployment 
apiVersion: extensions/v1beta1 
metadata: 
    name: jenkins-master 
spec: 
    replicas: 1 
    template: 
    metadata: 
     name: jenkins-master 
     labels: 
     name: jenkins-master 
    spec: 
     containers: 
     - name: jenkins-master 
     image: myregistry.azurecr.io/infrastructure/jenkins-master:1.0.0 
     imagePullPolicy: Always 
     readinessProbe: 
      tcpSocket: 
      port: 8080 
      initialDelaySeconds: 20 
      timeoutSeconds: 5 
     ports: 
     - name: jenkins-web 
      containerPort: 8080 
     - name: jenkins-agent 
      containerPort: 50000 
+1

http://stackoverflow.com/questions/32726923/pulling-images-from-private-registry-in-kubernetes – 4c74356b41

+0

Dzięki za informacje powyżej! Używając tego, mam to działa i zamieszczam odpowiedź poniżej – eggsy84

Odpowiedz

10

Mam to działa po przeczytaniu tej informacji.

http://kubernetes.io/docs/user-guide/images/#specifying-imagepullsecrets-on-a-pod

Więc po pierwsze stworzenie dostępu do rejestru klucz

kubectl create secret docker-registry myregistrykey --docker-server=https://myregistry.azurecr.io --docker-username=ACR_USERNAME --docker-password=ACR_PASSWORD --docker-email=ANY_EMAIL_ADDRESS 

Wymiana adres serwera z adresem swojego adresu ACR i nazwę użytkownika, hasło i adres e-mail z wartościami z użytkownikiem admin twój ACR. Uwaga: Adres e-mail może mieć wartość.

Następnie w deploy wystarczy powiedzieć kubernetes użyć tego klucza do wyciągania obraz tak:

kind: Deployment 
apiVersion: extensions/v1beta1 
metadata: 
    name: jenkins-master 
spec: 
    replicas: 1 
    template: 
    metadata: 
     name: jenkins-master 
     labels: 
     name: jenkins-master 
    spec: 
     containers: 
     - name: jenkins-master 
     image: myregistry.azurecr.io/infrastructure/jenkins-master:1.0.0 
     imagePullPolicy: Always 
     readinessProbe: 
      tcpSocket: 
      port: 8080 
      initialDelaySeconds: 20 
      timeoutSeconds: 5 
     ports: 
     - name: jenkins-web 
      containerPort: 8080 
     - name: jenkins-agent 
      containerPort: 50000 
     imagePullSecrets: 
     - name: myregistrykey 
2

To jest coś mamy rzeczywiście łatwiejsza. Po udostępnieniu klastra Kubernets za pośrednictwem az cli tworzona jest główna usługa z uprawnieniami do kontrybucji. Spowoduje to włączenie żądań pobierania z dowolnego Rejestru kontenera Azure w subskrypcji. To był PR: https://github.com/kubernetes/kubernetes/pull/40142, który został scalony w nowe wdrożenia Kubernetes. Nie będzie działać na istniejących instancjach systemu Cubernetes. Steve