instruction: Create a Dockerfile for workloads
output: ```dockerfile
  from making a mistake when
  specifying .spec.selector.
  Here is an example of a case when you might want to use this feature.
  Say Job old is already running. You want existing Pods
  to keep running, but you want the rest of the Pods it creates
  to use a different pod template and for the Job to have a new name.
  You cannot update the Job because these fields are not updatable.
  Therefore, you delete Job old but leave its pods
  running, using kubectl delete jobs/old --cascade=orphan.
  Before deleting it, you make a note of what selector it uses:
  kubectl get job old -o yaml
  The output is similar to this:
  kind: Job
  metadata:
   name: old
   ...
  spec:
   selector:
   matchLabels:
   batch.kubernetes.io/controller-uid: a8f3d00d-c6d2-11e5-9f87-42010af00002
   ...
  Then you create a new Job with name new and you explicitly specify the same selector.
  Since the existing Pods have label batch.kubernetes.io/controller-uid=a8f3d00d-c6d2-11e5-9f87-42010af00002,
  they are controlled by Job new as well.
  You need to specify manualSelector: true in the new Job since you are not using
  the selector that the system normally generates for you automatically.
  kind: Job
  metadata:
   name: new
   ...
  spec:
   manualSelector: true
   selector:
   matchLabels:
   batch.kubernetes.io/controller-uid: a8f3d00d-c6d2-11e5-9f87-42010af00002
   ...
  The new Job itself will have a different uid
  ```