Frequently asked questions
Please search for your question, or open an issue if you can't find an answer.
Is OrbStack free?
OrbStack is completely free to use during beta, but it will become a paid product afterwards. We're still working out the details (personal vs. business use, subscription vs. perpetual license, pricing, OSS and student discounts, etc.) and will share more information as we get closer to launch.
If you have ideas for pricing or licensing, please let us know. We want to make sure that OrbStack is accessible to everyone while also being sustainable and profitable, and we understand that cost can play a major role in that.
We hope that the performance, speed, reliability, simplicity, and potential cost savings of OrbStack will make it worth the price.
Subscription or perpetual license?
We're not sure yet, but here are some preliminary thoughts:
OrbStack is a product that requires continuous maintenance to components in order to improve over time and prevent security issues. Subscriptions are the only way to align our incentives with yours: we’re incentivized to keep improving the product and moving forward; you want improvements, and you can always cancel if you don’t feel like you’re getting that.
Lifetime: Unsustainable. OrbStack's components need continuous updates: compatibility with new macOS versions, Linux kernel, Docker, other assorted pieces, and new features to stay competitive. This would make it more likely to be discontinued.
Major version upgrades: This incentives us to withhold features for months when they would otherwise be released much faster; we'd rather deliver gradual improvements so you get constant value. Also, major upgrades have a high risk of introducing breaking changes, bugs, and other issues due to a lack of gradual testing. You don’t want massive changes in your dev tools every year, do you?
1-year updates + fallback perpetual: Isn't this more or less a yearly subscription in disguise? Just cancel if you don’t want to keep paying. I know JetBrains does a hybrid of this + subscription — not entirely opposed to it, but it shares a lot of these issues (e.g. incentivizes slower feature development). Realistically, would anyone revert to a year-old version and stay on it forever?
(Also, from our perspective: Sure, less people will pay if it’s subscription-only, but I'd expect long-term recurring revenue to be higher. I’d love to be able to keep expanding the project.)
All that being said, I'm still not sure. Compared to Docker, not being subscription-only could be an advantage, and I want to keep pricing simple. It's a hard problem.
How is OrbStack different from Docker Desktop?
OrbStack is a drop-in replacement for Docker Desktop that's faster, lighter, simpler, and easier to use. See OrbStack vs. Docker Desktop for a detailed comparison.
Switching from Docker Desktop is painless: just open OrbStack and get started.
How is OrbStack different from Colima?
OrbStack is a drop-in replacement for Colima that's faster, lighter, simpler, and easier to use. It's also more reliable and seamless, especially when it comes to networking, and has better compatibility with Docker Desktop. See OrbStack vs. Colima for a detailed comparison.
Switching from Colima is painless: just open OrbStack and get started.
Can I use the same Docker tools?
OrbStack provides a standard Docker engine with a setup similar to Docker Desktop, resulting in excellent compatibility. This means that the Docker tools you know and love will work out of the box, including:
- Docker CLI
- Docker Compose
- Third-party tools, such as Earthly and VS Code Dev Containers
See Third-party tools for more details.
Why are you asking for admin?
OrbStack asks for admin to perform optional setup tasks:
- To install command-line tools for managing and interacting with Linux machines
- To install Docker tools if you don't already have them
- To improve Docker compatibility with third-party tools by creating a symlink at
/var/run/docker.sock
You're free to deny admin access if you're not comfortable with it. Everything else will continue to work like normal.
Is admin required?
No, admin is optional. You can use all OrbStack features without it.
Will you support Kubernetes?
Yes, first-class Kubernetes support is planned. In the meantime, see Kubernetes for ways to use Kubernetes with OrbStack.
Why is there an 8 TB data file?
The 8 TB data.img
file in OrbStack's data is a virtual disk image that stores Docker and Linux data. Don't worry about the size; it's a special type of file known as a sparse file, meaning that it only takes as much space as you use, and automatically shrinks when you delete data. It does not take up 8 TB of disk space.
Sparse files are an APFS feature that provides a fast, efficient, and flexible way to store large files with varying usage. Time Machine supports them, so your backups will not be affected. The large 8 TB size allows OrbStack to manage the disk dynamically so you don't have to worry about having too much or too little disk space.
To find the true size of the file, run du -h ~/.orbstack/data/data.img
, or look at "size on disk" in Finder's info panel. Sparse files have two sizes: an apparent size (8 TB in this case), and size on disk (actual usage). Many tools show the apparent size, but the size on disk is what matters for disk space.
If you have third-party apps complaining about the file, please see the GitHub issue. Since macOS uses sparse files extensively, we'd like to move the ecosystem forward and fix compatibility issues with them.
Is this an Electron app?
No, OrbStack is a native macOS app written in Swift. Underlying components are written in a mix of Go, Rust, and C.
Why are Intel and Apple Silicon separate?
There's no technical reason that OrbStack couldn't be a universal app. However, most of OrbStack's size comes from architecture-specific Linux images and binaries, meaning that app and update sizes would be doubled as a universal app. We don't think it's worth the tradeoff, but we may revisit this decision in the future.
What can't you do?
Great question! We think OrbStack is pretty awesome and we're always improving it, but there are some things that we can't do yet. Here are some of the most common ones, many of which are planned:
- Kubernetes
- Linux graphical apps and GPU
- USB passthrough
- Dynamic memory (blocked by a macOS bug)
In most cases, no trade-offs were made to achieve our efficiency goals.
How does it work? Why is it fast?
OrbStack uses a lightweight Linux virtual machine with tightly-integrated, purpose-built services and networking written in a mix of Swift, Go, Rust, and C. See Architecture for more details.
How do I go back to Docker Desktop?
Stop OrbStack in the app and change the Docker context back to desktop-linux
:
docker context use desktop-linux
See Reverting for more details.
How do I go back to Colima?
Stop OrbStack in the app, then restart Colima. See Reverting for more details.
Colima will restore the Docker context automatically.
Can I use Podman?
Built-in support for running containers with Podman is being considered. Vote on the feature request to help us prioritize it.
In the meantime, you can create a Linux machine and use Podman in it. Bind mounts, port forwarding, etc. will work as expected. For example:
orb create ubuntu
orb sudo apt install podman
orb sudo podman run -it --rm -p 80:80 docker.io/docker/getting-started
Why is macOS 12.3+ required?
Supporting macOS Catalina 10.15 is not feasible because none of the virtualization APIs used by OrbStack existed back then.
In theory, supporting macOS Big Sur 11 is possible, but there are still missing APIs that would lead to a poor experience. It's also rarely requested.
macOS Monterey 12.0–12.2 have the necessary APIs, but there were critical virtualization bugs that would lead to a poor experience (performance issues and crashes). That's why we only support macOS 12.3 and newer.
Cannot connect to the Docker daemon at unix://.orbstack/run/docker.sock
This error means that Docker is trying to use OrbStack when it's not running. Start OrbStack to fix it.
If you just uninstalled OrbStack
Change the Docker context back to default
to fix the error.
docker context use default
See Reverting for more details.