I find this thing that companies are doing where they try to make it look like their software is open source but then pull the rug out to be super annoying.
What's the point of having a Github link that points to a repository with nothing but a readme in it, other than to trick people into thinking you're part of a community that you have no intentions of actually joining?
I'm not going to help a company beta test their products when I don't know if I'll even be able to use it. Either commit to having an open source tier or share your pricing plans, otherwise it's rude to expect the community go provide you with free QA services.
The only reason pricing isn't solidified yet is because it's a complicated market (Docker Desktop, Colima, etc.) and frankly, I think it'll be pretty hard to get this right without losing a lot of users. Hearing everyone's thoughts on this has been really insightful.
Tried it a couple of days ago, and I could really notice the speed & battery improvement. Impressive for what seems to be a one man project (of 18yo according to his twitter bio ?!).
Reading the architecture page (https://docs.orbstack.dev/architecture), OrbStack seems more than just a simple wrapper around Docker tools, but some clever custom kernel tricks and network stack.
(dev here) Indeed, glad to hear that it's worked well for you! Running custom services in the VM and on macOS also play a big role because it allows us to build them from scratch with efficiency in mind, rather than using off-the-shelf components. Larger time investment upfront, but definitely worth it in hindsight.
I don't expect OrbStack to stay a one-man project in the long term :)
"Free during beta" - wonder what pricing is going to be like out of beta. As far as I can tell, the main reason people started looking for alternatives to Docker Desktop is that it started costing money.
We (Instacart) were looking for alternatives before it started costing money. One of the primary reasons we pivoted and built remote development environments was because of the horrible performance of Docker Desktop. Even when running containers that do nothing I'd find my CPU was high for no reason. Anyone on an Intel Mac would essentially have a loud lap warmer with 2 hour battery life.
We are actively looking for alternatives that a) has minimal performance impact on our devs laptops b) is stable (We have most of our devs locked onto a specific version of Docker Desktop because latest was randomly crashing).
If the pricing is competitive we will likely be customers when you're out of beta.
Definitely want to make sure we get this right, since we know adoption will be highly contingent on pricing and keeping it widely accessible would be great. Let me know if you have any ideas!
Personally, I'm looking for alternatives because it's just janky on a Mac.
It gets weird and starts hanging on pulls and building because it can't grab metadata. The GUI is also just laggy. (Frustrating when I know electron apps can be fast)
This looks awesome. The state of virtualization on Apple Silicon right now is a bit painful. If this really does provide semi performant x86 Linux emulation and there was a Vagrant Provider plugin then this would easily be the defacto tool for dev / testing VMs on macOS.
Every tool I have tried like Parallels and VMWare Fusion 13 Pro says that nested virtualization for windows is not possible. If this is possible with Orb at some point i’d pay for it.
I often want to test a Windows VM with Docker installed into WSL2 and this becomes a nightmare now on Apple Silicon.
Also I wonder what possibility this opens up for an improved toolchain to develop stuff like Asahi Linux by bridging macOS native tooling and Linux emulation to write and test code without rebooting or using two machines.
Amazing work. Why can’t Apple, Vzmware, parallels or someone else do all of this when a single developer can. Sad.
I've been using this as my daily driver for Docker usage as well as running a Linux VM for testing Dokku. A few notes:
- It's definitely a work in progress, but there have been a ton of improvements dropping over the past few months. It definitely feels like it's improving in a good way.
- I think Docker _and_ Linux support is... well ambitious. There is certainly a ton of overlap (and I enjoy both) but its definitely going to be a question of focus as the product matures.
- The GUI needs some work - as all early GUIs/UIs do! - and is missing a ton of functionality in comparison to Docker Desktop. It definitely feels like its been somewhat tossed together in some cases. It's improving for sure, but still feels very beta.
- The Docker support is... well normal. I don't ever use the Docker Desktop UI, but the cli has worked just fine for all my usage thus far.
- It's quite nice to be able to shell into a lightweight Linux VM. Speed of npm install/bundling is pretty much the same as the host (though I'm not doing anything super fancy, just a normal Vue app) for the mounted volume. Same for go builds. I can't talk to it over the network, but thats coming.
- The maintainer has been super nice online and responsive to requests/suggestions. Obviously they can't work on everything at once, but the acknowledgement of "yes this is an issue, I've put some thought into it" is super important for folks/companies working in public.
- I'm somewhat concerned about pricing but honestly either my company will pay for it and I'll be fine _or_ I'm going to be priced out for personal usage, which is also okay. I'm not always the market for every product. I'm more concerned about having stable pricing (that isn't changing every year) and _clear_ value from enterprise licensing.
- Memory is allocated on demand, but unfortunately not freed afterwards. We really want dynamic memory and even have a working prototype! (https://twitter.com/kdrag0n/status/1645645284721184768) Unfortunately a macOS bug combined with a hypervisor restriction prevents us from shipping this. Happy to go into more details if anyone if interested.
"OrbStack is a drop-in replacement for Docker Desktop"
First thing I try is searching for container images to pull down to use in OrbStack to try it out... and nope, can't do that from what I can see.
"Switching from Docker Desktop is painless: just open OrbStack and get started."
So, no, not a drop-in replacement for Docker Desktop.
Then I look at CPU usage after closing down OrbStack, and it's still running at 265% CPU usage doing nothing.
Memory in Docker Desktop is customizable, with a default 8GB. No mention of them adjusting that in the benchmark.
I don't know... bunch of fishy stuff here that doesn't sit well with me. The "drop in replacement" part didn't sit well with me, but then seeing 265% CPU usage... let's just say it's not a good start in my book.
I just tried it with my JetBrains Rider setup where we develop against containers. Turned off Docker Desktop, started up Orbstack. All worked the same. Debugging/etc. Started up the docker containers without issue and don't see any CPU issues. I'm on a Mac M1 pro.
I'll keep trying it and see if it continues to work well in the long term.
Hey, dev here. 265% CPU usage doing nothing is definitely not normal and could be a bug of some sort. Can you share what you were doing before closing it, and even better, send log files (OrbStack menu -> Show Logs) to logs@orbstack.dev or open an issue on GitHub [1]? Happy to look into this and fix it.
Not sure what you mean about the images: you can pull images with the Docker CLI, and we'll add a GUI for managing images soon. To migrate images from Docker Desktop: https://github.com/orbstack/orbstack/issues/90
Re memory usage: One of our advantages over Docker Desktop is that memory is allocated on demand, so I think it's fair. (Unfortunately this doesn't include releasing memory dynamically due to a macOS bug combined with security restrictions: https://docs.orbstack.dev/efficiency#dynamic-memory)
Either way, thanks a lot for sharing your thoughts!
Thanks, that’s helpful. I read in another comment that you’re like 18?! Incredible work - keep at it and best of luck! I, for one, will certainly be keeping an eye on this.
What strikes you as impossible about it? Feature-wise, most of the top-line features are things that Docker Desktop provides, but as a DD user it doesn't strike me as surprising that a more lightweight version is possible.
Yeah I was shooting from the hip a bit - but mainly I was just working on an assumption that the long-standing complaints against Docker on Apple Silicon Macs are well-known. Scrolling down the landing page, they seem to be claiming they’ve solved most of them. After watching Docker fail to do that year after year, it seems extraordinary.
“No more battery drain or complicated VMs… Less than 0.1% background CPU usage on Apple Silicon… Less than 10 MB of disk space is used… 2 sec startup time… Works without admin”
Seems like a laundry list of absolutely everything you would fix with Docker Desktop if you had a magic wand?
If this is the real deal, it sounds absolutely amazing. Genuinely curious to hear from people who have used it extensively.
If you're referring to the claim that you can say goodbye to VMs, it's false/misleading advertising. It still runs a VM, just like Docker Desktop does.
(dev here) Hey, to clarify: "Say goodbye to slow, clunky containers and VMs" refers to the fact that we support running both Docker containers and Linux machines, not that the Docker engine doesn't use a VM under the hood.
And yes, there is still a VM, but the experience and architecture are very different from traditional full Linux VMs that we're describing with "slow, clunky".
Running all your instances in separate VMs vs using a single VM to host containers is a completely different paradigm, especially when it comes to performance. This is even more true for performance between instances.
So I personally don't find "say goodbye to VMs" to be misleading.
We definitely plan to add Kubernetes support and I'll be working on it once I feel that we're on a really solid foundation with Docker and Linux machine support.
What's the point of having a Github link that points to a repository with nothing but a readme in it, other than to trick people into thinking you're part of a community that you have no intentions of actually joining?
I'm not going to help a company beta test their products when I don't know if I'll even be able to use it. Either commit to having an open source tier or share your pricing plans, otherwise it's rude to expect the community go provide you with free QA services.