
Welcome to r/Proxmox , the main subreddit regarding the Proxmox hypervisor!
What's the best way to run Docker in Proxmox?
Bear with me on this. I installed my first Proxmox this morning, and even though I've been researching and reading documentation for the last week, I'm still quite ignorant regarding Proxmox. I wouldn't be asking this if it wasn't somehow obscure.
I noticed that there doesn't seem to be native support for Docker. I wanted to use Docker apps in my homelab for two main reasons:
-
Accessibility. I'm under the impression that most developers have their apps ready for Docker right out of the box. However, most of the tutorials and guides that I've found to install the simplest apps (like Plex Media Server) on Proxmox require tweaking and adapting stuff.
-
Resources. My little server (LarkBox X) doesn't precisely have the juice to spare. I believe that in terms of virtualization, a VM demands the most resources, then comes the container, and finally Docker. I'd like to have a conservative approach to resources.
The most common setup that I've seen is to install Debian (or other linux distro) in a VM or container and run Docker from there, which seems to defeat both of the points mentioned above.
Again, I might be biased due to the broad spectrum of opinions that I've found here and on YouTube. Any advice will be appreciated. Please point out my flaws without hesitation; I'm very happy to learn this stuff.
Note: I have already decided that I will reinstall Proxmox. That gives me room to mess up and try out ideas.

There are at least 3 ways you can do it - I bechmarked them about 4 years ago now
https://danthesalmon.com/running-docker-on-proxmox/
In my own experience of using these methods:
I found out very quickly that Docker on the PVE host broke PVE's networking.
Docker in LXC seems ok enough until it breaks backups.
Docker in a VM is the only way to go.
Worth the read! Thanks!
You can do LXC’s directly in Proxmox. Otherwise, you can run a VM with the docker engine installed. I do the latter with Ubuntu personally.
Same but Debian VM.
Proxmox is a hypervisor - and should be used as such (imo).
Proxmox should not be your application/dev/testbed server - all that should be done in CT/VMs. If you are not thinking of using Proxmox in this way - you really should start over and install a Linux dist (debian/ubuntu/etc.) on bare-metal.
If you choose to stay on proxmox, you can create a LXC and run docker. It's not officially supported - but runs great for a lot of people. (personally I had issues with microstutters/disconnects when streaming movies from plex, so I changed to VM).
VM requires more resources (Linux + docker is very efficient though) but runs fully isolated. It allows you to manage your environments separately and adds lots of backup advantages.
Check out ttek proxmox scripts, there's a docker lxc ready to go and you're likely to find something else there you've been wanting to try or might be interested in.
https://helper-scripts.com/ because this needs to be higher, Tteck saved me sooooo much time!
edit: it's https://community-scripts.github.io/ProxmoxVE now
Portainer makes it painless, run portainer in a proxmox vm (not ct).
Why not ct? That’s how I did mine - did I mess up?