I am looking for Docker-friendly tool work with pods on containerd/cri-o and podman is a good option.
However, after some works, I realize that podman is more like a standalone daemonless container engine (like rkt) than a client tool for existed engine like containerd or cri-o.
So my question is: Could I use podman to manage pods/containers running on containerd or cri-o?
Sorry, but I don't think this is possible without an extensive rewrite. Podman is entirely based on libpod, and has no real provision for talking to another container engine over an API.
@dungdm93 The tool you are looking for is crictl.
But why do you think you need a container engine like cri-o or contianerd? Those are only necessary if you are using higher level tools like container orchestrator's like Kubernetes.
Even if podman could launch a container in CRI-O, if you were running with kubernetes, it would want the container killed, since k8s wants full control over the CRI.
podman and Buildah do share the container/storage with CRI-O though, which means the local store of images can be shared between all three container engines.
@rhatdan @mheon I do use kubernetes to launch pods. However sometimes, I wanna hacking the way k8s work, or... just trouble shooting. I already use crictl, but I more familiar with docker cli, that is why I try podman.
As you mention, podman, buildah and cri-o share images, but don't share containers. So I wonder which scenario podman is good for?
One feature that podman is adding is the ability to create kubernetes yaml files out of running contianers/pods. That then could be used to launch equivalent pods under kubernetes/CRI-O.
Look at:
podman generate kube
To generate yaml
podman play kube
This is a shame. For users on a Mac, running a xhyve VM with containerd, using podman would be an option if it supported a remote engine. This leaves very few options, with just running Docker becoming the default; even for those of curious mind.
We are adding support for remote connections (connecting to a remote Podman instance via Varlink over SSH). I don't think we have any intent of supporting the Docker/containerd/CRI remote APIs in addition to that.
Awesome. I'll search for an issue to follow. Cheers @mheon
Just look at the podman-remote work.
https://github.com/containers/libpod/pulls?utf8=%E2%9C%93&q=is%3Apr+is%3Aclosed+remote
If you would like to contribute or try it out, we would love the help.
Since this is being worked on closing this issue.
Most helpful comment
One feature that podman is adding is the ability to create kubernetes yaml files out of running contianers/pods. That then could be used to launch equivalent pods under kubernetes/CRI-O.
Look at:
podman generate kubeTo generate yaml
podman play kube