Choose one of: [web istio-proxy] or one of the init containers: [istio-init]

Hi all
I bought the book https://www.learnistio.com/ and do the tutorials. When I try to deploy the following resource:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: helloweb
  labels:
    app: helloweb
    version: v1
spec:
  replicas: 3
  selector:
    matchLabels:
      app: helloweb
      version: v1
  template:
    metadata:
      labels:
        app: helloweb
        version: v1
    spec:
      containers:
        - name: web
          image: learnistio/hello-web:1.0.1
          imagePullPolicy: Always
          ports:
            - containerPort: 3000
          env:
            - name: GREETER_SERVICE_URL
              value: 'http://greeter-service.default.svc.cluster.local:3000'
---
kind: Service
apiVersion: v1
metadata:
  name: helloweb
  labels:
    app: helloweb
spec:
  selector:
    app: helloweb
  ports:
    - port: 3000
      name: http 

I’ve got the following error:

Error from server (BadRequest): a container name must be specified for pod helloweb-7bfb747b97-bmq9n, choose one of: [web istio-proxy] or one of the init containers: [istio-init]

I am using minikube and istio should be installed correctly:

 ~/istio/book/ch3 kubectl get namespace
NAME                   STATUS   AGE
default                Active   4d15h
istio-system           Active   4d15h
kube-node-lease        Active   4d15h
kube-public            Active   4d15h
kube-system            Active   4d15h
kubernetes-dashboard   Active   4d15h

What am I doing wrong?
Thanks