web-dev-qa-db-ja.com

microk8sで「イメージのプルに失敗しました」を修正する方法

入門用のDockerのチュートリアルを実行しようとしていますが、kuberetesで作業しなければならないときに行き詰まります。私はmicrok8sを使用してクラスターを作成しています。

私のDockerfile:

FROM node:6.11.5WORKDIR /usr/src/app
COPY package.json .
RUN npm install
COPY . .

CMD [ "npm", "start" ]

私のbb.yaml:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: bb-demo
  namespace: default
spec:
  replicas: 1
  selector:
    matchLabels:
      bb: web
  template:
    metadata:
      labels:
        bb: web
    spec:
      containers:
      - name: bb-site
        image: bulletinboard:1.0
---
apiVersion: v1
kind: Service
metadata:
  name: bb-entrypoint
  namespace: default
spec:
  type: NodePort
  selector:
    bb: web
  ports:
  - port: 8080
    targetPort: 8080
    nodePort: 30001

私は画像を作成します

docker image build -t bulletinboard:1.0 .

そして、私はポッドとサービスを作成します:

microk8s.kubectl apply -f bb.yaml

ポッドが作成されますが、ポッドの状態を確認すると

microk8s.kubectl get all

それは言う:

NAME                           READY   STATUS             RESTARTS   AGE
pod/bb-demo-7ffb568776-6njfg   0/1     ImagePullBackOff   0          11m

NAME                    TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)          AGE
service/bb-entrypoint   NodePort    10.152.183.2   <none>        8080:30001/TCP   11m
service/kubernetes      ClusterIP   10.152.183.1   <none>        443/TCP          4d

NAME                      READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/bb-demo   0/1     1            0           11m

NAME                                 DESIRED   CURRENT   READY   AGE
replicaset.apps/bb-demo-7ffb568776   1         1         0       11m

また、kubernetesダッシュボードで検索すると、次のように表示されます。

イメージ「bulletinboard:1.0」をプルできませんでした:rpcエラー:コード=不明desc =イメージ「docker.io/library/bulletinboard:1.0」を解決できませんでした:利用可能なレジストリエンドポイントがありません:プルアクセスが拒否されたか、リポジトリが存在しないか、必要になる可能性があります承認:サーバーメッセージ:不十分なスコープ:承認に失敗しました

Q:なぜこのエラーが発生するのですか?何もスキップせずにチュートリアルに従うだけです。

私はすでにドッカーでログインしています。

7
Manu Ruiz Ruiz

提案された解決策は、回答に従ってimagePullPolicy: Neverをデプロイメントに追加することです here しかし、これは私にとっては機能しなかったため、私は this ガイドに従いましたローカル開発で働いています。

1
Captain A