Hacker News new | ask | show | jobs
by westurner 528 days ago
Systemd, k8s, Helm, and Terraform model service dependencies.

Quadlet is the podman recommended way to do podman with systemd instead of k8s.

Podman supports kubes of containers and pods of containers;

  man podman-container
  man podman-generate-kube
  man podman-kube
  man podman-pod
`podman generate kube` generates YAML for `podman kube play` and for k8s `kubectl`.

Podman Desktop can create a local k8s (kubernetes) cluster with any of kind, minikube, or openshift local. k3d and rancher also support creating one-node k8s clusters with minimal RAM requirements for cluster services.

kubectl is the utility for interacting with k8s clusters.

k8s Ingress API configures DNS and Load Balancing (and SSL certs) for the configured pods of containers.

E.g. Traefik and Caddy can also configure the load balancer web server(s) and request or generate certs given access to a docker socket to read the labels on the running containers to determine which DNS domains point to which containers.

Container labels can be specified in the Dockerfile/Containerfile, and/or a docker-compose.yml/compose.yml, and/or in k8s yaml.

Compose supports specifying a number of servers; `docker compose up web=3`.

Terraform makes consistent.

Compose does not support rolling or red/green deployment strategies. Does compose support HA high-availability deployments? If not, justify investing in a compose yaml based setup instead of k8s yaml.

Quadlet is the way to do podman containers without k8s; with just systemd for now.

1 comments

Thanks! I’ll take a look at quadlet.

I find that I tend to package one-off tasks as containers as well. For example, create database tables and users. Compose supports these sort of things. Ansible actually makes it easy to use and block on container tasks that you don’t detach.

I’m not interested in running kubernetes, even locally.

Podman kube has support for k8s Jobs now: https://github.com/containers/podman/pull/23722

k8s docs > concepts > workloads > controllers > Jobs: https://kubernetes.io/docs/concepts/workloads/controllers/jo...

Ingress, Deployment, StatefulSets,: https://news.ycombinator.com/item?id=37763931