2017-02-26 70 views
2

我試圖根據本地創建的圖像創建複製控制器。但是當我嘗試創建rc時,它會給出錯誤ImagePullBackOff。我創建了本地使用minikubeKubernetes使用本地圖像創建rc

這裏是我的.yaml文件的簇:

apiVersion: v1 
kind: ReplicationController 
metadata: 
    name: example 
spec: 
    replicas: 1 
    selector: 
    app: ayonAppserver 
    template: 
    metadata: 
     name: example.com 
     labels: 
     app: ayonAppserver 
    spec: 
     containers: 
     - name: something 
     image: nktest:10 
     resources: 
      limits: 
      cpu: 500m 
      memory: 1024Mi 

命令,我跑創建RC:

kubectl create -f <file> 

當進出口運行docker images我看到的圖像清單

REPOSITORY    TAG     IMAGE ID    CREATED    SIZE 
nktest     10     e60b3c9c3bc6  10 hours ago  425 MB 

when我跑kubectl get pods

NAME   READY  STATUS    RESTARTS AGE 
example-gr9v2 0/1  ImagePullBackOff 0   2m 

我試圖在本地運行碼頭工人形象,它運行良好

docker run -d --name="testAyonApp1" nktest:10 

誰能幫助解決?

+2

你能把圖片推送到hub.docker.com嗎?否則,kubernetes節點如何知道在哪裏拉取圖像? – BMW

+0

我能夠將它推到dockerhub後運行它,但是有沒有一種方法可以通過將圖像創建在本地?改變我的問題,以增加這一點 –

+2

如果不是hub.docker.com,那麼你需要一個私人註冊服務器來保存你的圖像,節點可以從它下載。否則,節點如何知道在哪裏下載它?本地構建的圖像不能被節點訪問。 – BMW

回答

1

非常感謝@BMW幫助我解決這個問題。問題在於,自從我使用minikube(本地)創建集羣后,我一直在想,我在本地計算機中創建的每個映像都將在minikube集羣中可見。但是隻有當圖像存在於節點內部時才能看到圖像。這就是爲什麼我每次想要構建它時,都在尋找下載圖片的原因。

我現在已經創建了一個dockerhub帳戶並將圖像推送到集線器中。現在事情運行得很好。

+0

您也可以在minikube虛擬機中的docker守護程序上構建映像。 –

+0

@AirirhRamanathan,你可以多給點關於如何做到這一點的線索? –