I am trying to run a simple ubuntu container in a kubernetes cluster. It keeps on failing with CrashLoopBackOff status. I am not even able to see any logs as in to find the reason for it.
my yaml file looks like following:
apiVersion: apps/v1 kind: Deployment metadata: name: ubuntu labels: app: jubuntu spec: selector: matchLabels: app: jubuntu template: metadata: labels: app: jubuntu spec: containers: - name: ubuntu image: ubuntu
That's because you're using a
Deployment that assumes you have a long-running task. In your case, it starts the container and immediately exits since there's nothing to be done there. In other words, this deployment doesn't make a lot of sense. You could add the following in the
containers: field to see it running (still useless, but at least you don't see it crashing anymore):
command: - sh - '-c' - "while true; do echo working ; sleep 5; done;"
See also this troubleshooting guide.
For your convenience, if you don't want to do it via editing a YAML manifest, you can also use this command:
$ kubectl run --image=ubuntu -- sh while true; do echo working ; sleep 5; done;
And if you're super curious and want to check if it's the same, then you can append the following to the run command:
--dry-run --output=yaml (after