<p>I am getting the following error when I run</p>
<pre><code>kubectl create -f pod.yaml
</code></pre>
<p>error</p>
<pre><code>Error from server (BadRequest): error when creating &quot;pod.yaml&quot;: Pod in 
version &quot;applicant:v1&quot; cannot be handled as a Pod: no kind &quot;Pod&quot; is 
registered for version &quot;applicant:v1&quot;
</code></pre>
<p>minikube is up and running and I even tried to change it to <code>kind: Deployment</code> but I got another error saying:</p>
<pre><code>error: unable to recognize &quot;pod.yaml&quot;: no matches for /, Kind=Deployment
</code></pre>
<p>yaml:</p>
<pre><code>apiVersion: apps/v1
kind: Deployment
metadata:
  name: customer-applicant
  labels:
    app: applicant-vue
spec:
  replicas: 1
  selector:
    matchLabels:
      app: applicant-vue
  template:
    metadata:
      labels:
        app: applicant-vue 
    spec:
      containers: 
      - name: api-applicant
        image: api-applicant
        ports:
          - containerPort: 8080
          - containerPort: 8000
        resources: {}
        volumeMounts:
          - mountPath: /usr/local/tomcat/logs
            name: api-applicant-claim 

# import       
      - name: applicant-import
        image: applicant-import
        resources: {}

# cache
      - name: cache
        image: cache
        resources:
          limits:
            memory: &quot;536870912&quot;

# storage
      - name: storage
        image: storage
        ports:
         - containerPort: 7000
         - containerPort: 7001
         - containerPort: 7199
         - containerPort: 9042
         - containerPort: 9160
        resources: {}
# view
      - name: view
        image: view
        ports:
         - containerPort: 3000
        resources: {}

      volumes:
        - name: applicant-claim
          persistentVolumeClaim:
            claimName: applicant-claim
 # tomcat
      - name: tomcat
        image: tomcat
# node
      - name: node
        image: node
        resources: {}
# openJdk
      - name: node
      - image: node
        resources: {}
</code></pre>

Mike3355
<p>You have a lot of issues here. I've described some of them:</p>

<p><strong>1.</strong> 
<code>pod.yaml</code> file's structure is a structure of a <code>Deployment</code> object.</p>

<p><strong>2.</strong>
<code>apiVersion</code> for <code>Deployment</code> depends of kubernetes version: </p>

<ul>
<li><code>apps/v1beta1</code> for versions before 1.8.0</li>
<li><code>apps/v1beta2</code> for versions starting from 1.8.0 before 1.9.0</li>
<li><code>apps/v1</code> for versions starting from 1.9.0</li>
</ul>

<p>So, if you deploy your <code>pod.yaml</code> on the latest kubernetes cluster it should be started from:</p>

<pre><code>apiVersion: apps/v1
kind: Deployment
</code></pre>

<p><strong>3.</strong>
The part:</p>

<pre><code>spec:
  replicas: 1
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 100Mi
  template:
    metadata:
      labels: 
        app: product-ratings-vue
</code></pre>

<p>should be changed to:</p>

<pre><code>spec:
  replicas: 1
  template:
    metadata:
      labels: 
        app: product-ratings-vue
</code></pre>

<p><strong>4.</strong>
Second <code>spec</code> block should be moved on the same level as <code>spec.template.metadata</code>:</p>

<pre><code>    spec:
      replicas: 1
      template:
        metadata:
          labels: 
            app: product-ratings-vue
        spec:
          containers: 
</code></pre>

<p>The final <code>deployment.yaml</code> is:</p>

<pre><code>apiVersion: apps/v1
kind: Deployment
metadata:
  name: customer-ratings
  labels:
    app: product-ratings-vue
spec:
  replicas: 1
  selector:
    matchLabels:
      app: product-ratings-vue
  template:
    metadata:
      labels:
        app: product-ratings-vue 
    spec:
      containers: 
      - name: api-service
        image: api-service
        ports:
          - containerPort: 8080
          - containerPort: 8000
        resources: {}
        volumeMounts:
          - mountPath: /usr/local/tomcat/logs
            name: api-service-claim 

# ekomi-import       
      - name: ekomi-import
        image: ekomi-import
        resources: {}

# cache
      - name: cache
        image: cache
        resources:
          limits:
            memory: "536870912"

# storage
      - name: storage
        image: storage
        ports:
         - containerPort: 7000
         - containerPort: 7001
         - containerPort: 7199
         - containerPort: 9042
         - containerPort: 9160
        resources: {}
# view
      - name: view
        image: view
        ports:
         - containerPort: 3000
        resources: {}

 # tomcat
      - name: tomcat
        image: tomcat
# node
      - name: node
        image: node
        resources: {}
# openJdk
      - name: node
        image: node
        resources: {}

      volumes:
        - name: api-service-claim
          persistentVolumeClaim:
            claimName: api-service-claim
</code></pre>
