Hope this is an appropriate question for this forum.
I have a user that wants docker installed in rootless mode. Is there a checklist somewhere that details the steps necessary to do such a thing?
I’ve found some instructions on the internet that involve downloading a script via curl, and adding some docker repos. However, in this particular situation there is no access to the internet so I need to be able get any needed resources via CD net. I do have access to mirrored copies of the Rocky repos and the EPEL repos.
Thanks in advance
PG
How was Docker installed?
Any reason why user don’t want to use podman? It works well in rootless mode and it is included in appstream repo.
I had the 6 docker rpms in a folder and then ran “yum localinstall *.rpm”, enabled and started the docker service, and added the user to the docker group. It seems to work like normal docker that way. If a user asks me to install docker that’s the usual way I do it.
This user specifically asked for “rootless” docker. I’m not that docker fluent, so I’m not sure what exactly needs to be done to make it “rootless”
I don’t know how fluent the user actually is with docker - they might have just been told “get docker installed in rootless mode” and passed on the request.
I installed docker the usual way described in my other comment, and told the user “let me know if that does what you need”. No feedback yet, so maybe what I gave them fulfills their needs.
Are podman and docker essentially the same thing?
Two days ago, I just installed Docker on a Rocky 9 machine. On the Docker website, I followed the instructions to add the Docker repository from this page RHEL | Docker Docs - towards the bottom, they have rootless instructions. Not sure if it will help you or not. I choose to remain using sudo
as to keep my my server a tad more secure.
Rootless is far easier with podman. Personally never got it working with docker it just seemed too complicated and not worth the effort. Either that or I just gave up too easy
I would not say, that they are same thing. But both tools are container engines doing similar thing. Both tools should have compatible syntax, at least for most commonly used scenarios. You can also install podman-docker
package, which allows to emulate Docker CLI using podman.
The most important difference is that Docker require daemon (in rootfull mode running as root, in rootless as user), while podman is daemonless and rootless by design. Having daemon has one advantage: daemon automatically starts container after reboot. With podman you need to setup systemd services to start them. podman generate systemd is now deprecated, Quadlet is now recommended approach to run containers using systemd.
Another important difference is that podman supports pods (containers which share network, IPC and UTS namespaces). This may be important for people running containers on kubernetes, especially when they are builiding pods composed from multiple containers working together. Podman supports also several Kubernetes objects and allows to deploy them using podman kube play command.