• ramble81@lemm.ee
    link
    fedilink
    English
    arrow-up
    4
    ·
    10 months ago

    Piggybacking on this… what’s the quickest way to deploy a docker container in Kubernetes short of having to hand create the deployment yaml? Or is that it, having to create one from scratch.

    • meteokr@community.adiquaints.moe
      link
      fedilink
      English
      arrow-up
      4
      ·
      10 months ago

      If you run it in podman, podman can export into a kubernete file, but its been a long time since I’ve tried it though. podman kube generate $CONTAINERNAME

    • sudneo@lemmy.world
      link
      fedilink
      English
      arrow-up
      6
      ·
      10 months ago

      You have a bunch of options:

      kubectl run $NAME --image=$IMAGE
      

      this just creates a pod running the specific image. If you kill the pod, or it terminates, it won’t be run again. In general though, you probably want to do some customization before running (maybe you need volumes, secrets, env, ports, labels, securityContext, etc.) and for that you can simply let kubectl generate the boilerplate YAML and then simply make some edit:

      kubectl run $NAME --image=$IMAGE --dry-run=client -o yaml > mypod.yaml
      # edit mypod.yaml
      kubectl create -f mypod.yaml
      

      You can do the same with a deployment or statefulset:

      kubectl create deployment $NAME -n $NAMESPACE [...] --dry-run=client -o yaml > deployment.yaml
      

      In case you don’t need anything fancy, the kubectl create subcommand allows you to create simple workload, so probably that’s the answer to your question.

      • ramble81@lemm.ee
        link
        fedilink
        English
        arrow-up
        2
        ·
        10 months ago

        You rock! Yeah I just wanted to run the image first before building out the whole framework around it. This is what I was looking for.