11 ms·
Show HN: Container Desktop – Podman Desktop Companion
- bradleyy 2y agoWhile I'm basically fine with Colima on Mac, this seems like a nice alternative to Docker Desktop.
- veonik 2y agoAfter some initial pains with colima, I tend to agree. Mostly, just needing to specify some VZ args[0] so I could run x86_64 docker images on my M-series. Is there something in these desktop UIs that colima is completely missing? [0] `colima start --vm-type=vz --vz-rosetta`
- fragmede 2y ago"some initial pains" = Colima VM running out of resources running kind, so I had to raise the CPU and RAM, and then raise the fd's in the VM itself to get it to work. but now it works!
- cjauvin 2y agoCould this be the answer I needed to run an SQL Server image that refused to run on my M3 MBP? I was about to, sadly, try Docker Desktop, because of that.
- veonik 2y agoThat is exactly why I needed it, too! :D Be sure to increase RAM over the default 2GB as well, that SQL Server container is hungry and will crash without enough resources dedicated to it.
- dmonitor 2y agowhat does this offer that podman desktop does not? https://podman-desktop.io/ https://podman-desktop.io/
- gnulinux 2y agoLast I checked podman's support of docker-compose.yml was very limited to say the least. Has it changed?
- scheme271 2y agoWhat parts did you find lacking? I haven't had any issues using podman-compose to launch stuff using unmodified docker-compose.yml files.
- mfenniak 2y agoThere are two approaches to using compose w/ podman: Replace docker-compose with podman-compose -- somewhat limited capabilities, but works in a lot of cases. Use docker-compose against podman w/ podman's system service, which provides a docker compatible API endpoint (https://docs.podman.io/en/v5.2.1/markdown/podman-system-service.1.html https://docs.podman.io/en/v5.2.1/markdown/podman-system-serv...). This basically has full docker-compose capabilities, but, you do need run the socket service as a specific user account which end up running all the pods.
- 3np 2y agoI found the most stable to be a third option: 'podman compose' with docker-compose-v2 cli "backend" connecting to the actual podman socket. This will be done if you run 'podman compose' with 'docker-compose' in PATH, and DOCKER_HOST set to your podman socke, since 'podman compose' will just shim through to whichever command it finds available. Both podman-compose (the Python project) and docker-compose-v1 have significant gaps in the compose spec.
- EdwardDiego 2y agoYeah, I'm using it and it's nearly everything I need.
- candiddevmike 2y agoWhat does podman desktop offer that WSL does not (at least for those of us on Windows)?
- moondowner 2y agoI've been using Rancher Desktop as an alternative to Docker Desktop, https://rancherdesktop.io/ https://rancherdesktop.io/ on macOS and Windows, it's pretty solid. It has some kinks to work out but I got it working with IDEs too (e.g. the Intellij IDEA Docker Compose integration to work with it). What I also like is that existing scripts and etc that use the docker-compose cli work with Rancher Desktop too, as it uses nerdctl https://github.com/containerd/nerdctl https://github.com/containerd/nerdctl
- manojlds 2y agoYup +1 for Rancher Desktop. Works as smooth as Docker Desktop on MacOS.
- SystemOut 2y agoWe just completed the switch to Rancher where I work. 1200ish engineers, mostly on Macs. So far it's worked out pretty well..fewer hiccups than I expected.
- justinclift 2y agoDoes it use the same "containers are really just running in a Linux VM" approach as Docker Desktop on macOS?
- 1oooqooq 2y agounless you run osx on a Linux kernel, it will always be so. not a personal attack on you, but it blows my mind how clueless the current generation of developers become after the docker phase.
- brianpan 2y agoI don't understand this comment on any level. Containers will only ever be on a linux kernel or VM? Never natively on ANY other OS? Only Linux containers exist? Developers were more clueful about containers before Docker made them wildly popular?
- hnlmorg 2y agoIf you’re on macOS, then Orbstack is a nice alternative to Docker Desktop (I’m not affiliated with Orbstack)
- cweagans 2y agoAnother enthusiastic +1 for OrbStack. It's fantastic.
- throwanem 2y agoGPU support would be a real benefit, but for anything not needing that, Orbstack's become my strong preference.
- cweagans 2y agoIs there anything you can actually _do_ with the Apple GPUs outside of macOS? I know the Asahi Linux person was working on a driver for it, but is it in a useful state?
- rahen 2y agoYes. In fact it's accelerated and supports OpenGL 4.6 while macOS tops at OpenGL 4.1, and really mostly only supports Metal nowadays. With Asahi you can use OpenGL and Vulkan. https://arstechnica.com/gadgets/2024/02/asahi-linux-projects-opengl-support-on-apple-silicon-officially-surpasses-apples/ https://arstechnica.com/gadgets/2024/02/asahi-linux-projects...
- cweagans 2y agoOh neat! Thanks for the tip!
- deleted 2y ago[deleted]
- alexandre_m 2y ago
- samz 2y agoRancher desktop is fine. I did migration within 30 minutes.
- koito17 2y agoLooks cool, but how is the Kubernetes support? One of the major reasons we use Docker Desktop at work is to host a local Kubernetes cluster with services deployed there. We also support Rancher Desktop since it uses k3s, and k3s is arguably a nicer Kubernetes distribution than the one set up by Docker Desktop. With that said, I have recently tried OrbStack, and it is able to start up near instantly, while Kubernetes spends at most 2 seconds to start up. The UI is minimal, but it offers just enough to inspect containers, pods, services, logs, etc. It also is very lightweight on memory usage and battery. I personally cannot return to either Docker or Rancher Desktop after having tried OrbStack. OrbStack also allows using Kubernetes service domains directly on the host. So no need to use kubectl port-forward, and applications running on the host can use identical configuration to what's inside the Kubernetes cluster. The battery savings, dynamic memory usage, fast startup time, and QOL of OrbStack is pretty much my standard for a Docker Desktop alternative. I am not sure if container-desktop satisfies all of these requirements. (Rancher Desktop certainly doesn't)
- linkdd 2y agoYou should check out https://kind.sigs.k8s.io/ https://kind.sigs.k8s.io/ and https://k0sproject.io https://k0sproject.io
- leonheld 2y agoI love kind! Used it a lot when I was writing my thesis on Kubernetes schedulers.
- arjvik 2y agoCurious to see your thesis!
- leonheld 2y agoIt's not much, just a simple bachelor thesis https://repositorio.ufsc.br/bitstream/handle/123456789/244953/one-true-monograph.pdf?sequence=1&isAllowed=y https://repositorio.ufsc.br/bitstream/handle/123456789/24495.... I mostly wanted to provide a software/hardware playground for my advisors who were working on their own thesis about algorithms for energy-aware IoT edge deployments. The TLDR is that you can write algorithms to minimize various parameters within a Kubernetes cluster, like energy consumption.
- forrestthewoods 2y agoPersonally I just build all my software so it includes its dependencies and then you don't need docker or any complex image manager. Don't rely on a bunch of crap being installed in the system path! Much much simpler this way imho.
- diego_sandoval 2y agoI think that's the right way to do it from the software distributor's side, but most software distributors don't do it like you. So, from a consumer's point of view, if you want to use their software, then docker is the lesser evil compared to all the others. Notably, it's much better than binaries with dynamic libraries that don't come included in the bundle itself.
- candiddevmike 2y agoAs a user, I'd rather use a container then figure out how to run a binary. The onboarding process is typically so much easier, and most enterprise folks already have container infrastructure in place. For big customers, getting a Kubernetes namespace can have significantly less friction than a VM these days.
- forrestthewoods 2y ago> then figure out how to run a binary It should never be more complicated than "run the binary". Running programs shouldn't require infrastructure or VMs or Docker images. Deploying a program should be, and can be, as simple as sharing a zip file, extracting, and running. It's not that hard!
- forrestthewoods 2y ago> better than binaries with dynamic libraries that don't come included in the bundle itself. Binaries should always include the dynamic libraries they require. Docker is one way to include them. But you can also just include them the vanilla way. Works great! Very easy and reliable.
- 2y ago
- achristmascarl 2y agoI've really enjoyed using Orbstack: https://orbstack.dev/ https://orbstack.dev/ it also has support for Linux VMs and kubernetes (although i haven't tried that yet)
- Apreche 2y agoDoes it support VSCode Devcontainers? That's the only reason I haven't been able to switch to an alternative.
- saghul 2y agoI'm currently using colima, and none of the other alternatives that I have found support forwarding UDP ports, which I use a lot, so that's a bummer! Thankfully, lima has landed a new port forwarder with UDP support! [0]. I'm hoping to be able to use it soon once it makes into a release. [0]: https://github.com/lima-vm/lima/commit/13e9cbcabc6a0a05ec3893f3e04283a13245c191 https://github.com/lima-vm/lima/commit/13e9cbcabc6a0a05ec389...
- ekzy 2y agoHonest question, what’s wrong with docker desktop? Looking at all the alternatives suggested it’s not clear to me why any other tools are better? I’m not using k8s locally, just docker compose. To connect to our remote k8s cluster, I use IntelliJ k8s extension (I just need to do some basic dev tasks, I’m not administrating the cluster)
- alx__ 2y agoFor me, it was consuming so much memory. Switching to OrbStack helped fix that
- bboygravity 2y agoFreeBSD jails? :p
- maxyurk 2y agoit's not free
- Andoryuuta 2y agoOne big difference is the licensing. Docker Engine itself is apache licensed (and hence free to use at a company of any scale), but Docker Desktop requires a paid plan if your company has more than 250 employees or more than $10 million in annual revenue [0]. [0]: https://docs.docker.com/engine/#licensing https://docs.docker.com/engine/#licensing
- fragmede 2y agoWhich like, seems entirely fair, but when there are suitable enough replacements that cost $0, why pay for it? Sure there are big picture reasons, but companies often don't think that long-term.
- otteromkram 2y agoPriority tech support when everything blows up is usually the number one reason.
- istoica 2y agoKubernetes is planned - my devops wants me to add it badly! Author note - Most of you guys here are power users, for whom UI is a visual poem that you need or not. This is not a commercial project, it is not following any business goals. But this does not mean concessions to quality, it does try to offer minimal resource usage everywhere, easy experience, good UI/UX. It explains all it does behind the scenes if you enable the developer console. It can help one learn so at a certain moment one understands and automates with scripts and specs. But everyone these days is either seen as too smart or too dumb, I don't consider users like this. I know everyone started somewhere and a gradual learning experience is the best. I broke so many radios and toys when I was a kid and I learned so much, by looking at what was is inside. It is a project done by one dude, after work and when it rains outside (In Belgium it rains a lot).
- beepbooptheory 2y ago> But everyone these days is either seen as too smart or too dumb Vert succinct and poetic way to describe so much these days in this space.
- ljm 2y agoI never finished it, but I had a lot of fun documenting a basic-ass K8S (well, K3S) setup that costs about 20€/mo on Hetzner. You don't really learn about sysadmin through it, or even about docker that much, but you get an idea of how you might easily run a few different things on a server while only needing to know YAML, and not some custom DSL like chef or puppet.
- thwarted 2y ago> only needing to know YAML, and not some custom DSL like chef or puppet. YAML may be a known syntax, but the use of it still requires domain specific knowledge, and is still a domain specific language expressing those domain specific concepts, as to what the expected keys and values are allowed to be and how they are interpreted.
- ljm 2y ago
- 2OEH8eoCRo0 2y agoWhy does Docker feel like it was designed by people with no Unix background?
- bityard 2y agoI don't know if your comment was intended to imply that Docker was against the Unix philosophy in some way (a debatable point, but not really one I share), or if you mean that the tools don't follow a lot of common Unix convension. When Docker was only a few years old, I did keep running into lots of small things which implied that the people developing docker in fact did NOT have a Unix (or even Linux) background. Things like source code files having the wrong type of newlines (or a mix of types), and forgetting to add a newline to the last line in a file. (A correct Unix text file has a newline at the end of _every_ line, even the last one.) There were of course more giveaways than this, I just remember the newline stuff irritating me the most.
- jve 2y agoWhy is newline at the end relevant? I remember not having a newline breaks some tools... but why? It can't be because of unix philosophy!?
- mook 2y agoSome old tools had bugs where they'd read a line (up to the new line) and then process it, so if the last line didn't end with a new line they'd never do the processing. So a manual workaround for bugs became the convention.
- paulv 2y agoBack in ~2002 this was the case with cron. Found out the hard way when all the backup tapes we desperately needed were completely empty.
- bityard 2y agoNo, that is not a bug and there was never such a thing as "manually" adding a trailing newline. All tools add newlines automatically where they should be. Unix has ALWAYS defined a line of text as being terminated by a newline. The last line in the file is not an exception.
- ape4 2y agoIs it ok to run the Windows version on a normal desktop (not in a VM). Does it uninstall cleanly. Thx
- istoica 2y agoYes, get it from Microsoft Store, it is digitally signed, autoupdates and offers you the best windows experience.
- leoqa 2y agoOrthogonal rant: Podman allows host mounts during image build, whereas docker does not. Ran into a big headache where a monorepo using podman leveraged this to create container images from source and the equivalent docker implementation had to copy the monorepo into the docker build context every time. We needed to use Docker for M1 support (probably should've tried Colima, etc).
- jmholla 2y agoI may be wrong, but I think BuildKit gives Docker that functionality.
- nine_k 2y agoI'd bind-mount the tree into the context. (I assume Docker won't follow simple symlinks.)
- taspeotis 2y agohttps://docs.docker.com/reference/dockerfile/#run---mount https://docs.docker.com/reference/dockerfile/#run---mount
- ademup 2y agoIs Ubuntu 24.04 supported? (Docker Desktop doesn't support 24.04 currently)
- istoica 2y agoIt is what I am using, so by default, yes!
- wg0 2y agocolima + docker CLI goes a long way. $ colima start $ docker context use colima And that's it. And Kubernestes? No thank you, life is already hard as is.
- dewey 2y agoEvery time I tried Colima it stopped working after a few days. Not just for me either. Back to Docker Desktop which never gave me a single issue in many years.
- mococa 2y ago+1 for OrbStack.
- mococa 2y agoIs another crap electron app?
- istoica 2y agoAuthor of the project here, yes! - electron done well is amazing, try to write a cross platform gui app in a RAD way these days with other tech. I am experienced in flutter too and would still stick to the curent stack. Maybe one day when text engine is better in flutter i would port it. You cant be that cross platform, cross os, cross arch with anything better than electron these days. Electron done well shouldn’t create any problems.
- jpace121 2y agoI would also encourage people to look at Podman desktop which has pretty good support from Red Hat. https://podman-desktop.io/ https://podman-desktop.io/
- 1oooqooq 2y agosupport from red hat is not a good thing :nervouslaughteremoji
- dzonga 2y agohow is this different from the usual podman client ?
- istoica 2y agoAuthor: It isn’t, if you are a power user, the podman client should provide all you need. It also supports docker too. The difference is that this is a GUI, like Docker Desktop, but unlike it, batteries are not included. I dont dislike DD, but to each their own.
- jlos 2y agoMy team switched our medium sized org over to Rancher Desktop with no major issues after about 10 months. We don't need kubernetes though.
- hi-v-rocknroll 2y agoIt's not fully baked. Sigh - Buggy as heck with bad error messages. - Bad UX with inadequate help. - Requires extra tweaking and installing more stuff to get going, which defeats its entire purpose. - Confusing. - Can't browse or choose tags of images. It's not a viable alternative yet, but maybe it will improve sometime in the future.
- istoica 2y agoCreating some tickets would help improve what you find problematic. I understand your frustration, you would want it to just work , but life isn’t always how we want it to be either. It is a free and open source project, no hidden goals, driven only by passion and love for tech.
- knowitnone 2y agonot affiliated with the project but thanks for the feedback! Now they have some more items in their TODO list which will make their product better.
- rednafi 2y agoOrbstack
- nerdponx 2y agoNice! Unfortunately I got this error upon opening the Mac app: Uncaught Exception: TypeError: Cannot read properties of null (reading 'setImage') at NativeTheme.<anonymous> (file:///Applications/Container%20Desktop.app/ Contents/Resources/app.asar/build/main-5.2.3.mjs:22:537771) at NativeTheme.emit (node:events:519:28) Nothing seems to be wrong, but that was surprising. Also, it's not obvious from the site that Container Desktop does bundle Podman along wit it, unlike Docker Desktop. The analogy with the latter and the subtitle "Podman Desktop Companion" on the site made me think it might include a bundled Podman installation. That said I do like the idea, and I'm definitely looking forward to trying it. For context, I'm not a Kubernetes user, mostly just Compose and plain `docker run` for ad-hoc things.
- istoica 2y agoThanks, just released 5.2.4 to address the flatpak issue you mention above. I am sorry for that, it is extremely hard to support so many formats on linux. I am documenting myself as much as I can to be able to publish to flatpak hub, but there is a lot to get to do it properly.
- nerdponx 2y agoI understand that packaging cross platform apps is hard. Just note that I was talking about the MacOS package, not Flatpak.
- TechSquidTV 2y agoI saw this, I think posted here the other day, looked interesting. https://github.com/ajayd-san/gomanagedocker https://github.com/ajayd-san/gomanagedocker A TUI alternative.
- istoica 2y agoI like TUIs a lot too, they work great for remote connections and just feel good. I even mention one in the Readme of the repo, maybe some could create an awesome tui tools type of page for container management UIs
- v3ss0n 2y agoFor none gui, lazydocker is perfect
- snapplebobapple 2y agoTangentially unrelated side queation: how do you make nfs mounts work in podman without running it as root and making running podman over docker kind of pointless or what do you use to share a base fileayatem from somewhere else on the network to a docker container that isnt nfs or samba?
- lozf 2y agoMaybe these blog posts¹² from Red Hat will help. I haven't tried yet, just found these earlier. ¹: https://www.redhat.com/sysadmin/rootless-podman-nfs https://www.redhat.com/sysadmin/rootless-podman-nfs ²: https://www.redhat.com/sysadmin/nfs-rootless-podman https://www.redhat.com/sysadmin/nfs-rootless-podman
- snapplebobapple 2y agoI dont think thats quite it. I have nfs mounts defined in my compose files. I.e in the container /media is an volume docker creates from an nfs mount defined in the docker compose. That dodnt work withpout podman having root last i checked a few years ago