7

我已经在本地构建了 docker 镜像:

docker build -t backend -f backend.docker

现在我想用它创建部署:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: backend-deployment
spec:
  selector:
    matchLabels:
      tier: backend
  replicas: 2
  template:
    metadata:
      labels:
        tier: backend
    spec:
      containers:
      - name: backend
        image: backend
        imagePullPolicy: IfNotPresent # This should be by default so
        ports:
        - containerPort: 80

kubectl apply -f file_provided_above.yaml工作,但后来我有以下豆荚状态:

$ kubectl get pods
NAME                                   READY   STATUS             RESTARTS   AGE
backend-deployment-66cff7d4c6-gwbzf    0/1     ImagePullBackOff   0          18s

在那之前是ErrImagePull。所以,我的问题是,如何告诉它使用本地 docker 图像?我在互联网上的某个地方读到我需要使用它来构建图像,microk8s.docker但它似乎已被删除

4

1 回答 1

13

找到有关如何使用私有注册表的文档:https ://microk8s.io/docs/working

首先需要启用它:

microk8s.enable registry

然后将图像推送到注册表:

docker tag backend localhost:32000/backend
docker push localhost:32000/backend

然后在上面的配置image: backend中需要替换为image: localhost:32000/backend

于 2019-04-06T14:58:49.030 回答