OrbStack.dev: The Best Lightweight Tool for Developers

Tran TuanTran Tuan
5 min read

In the world of software development, efficiency and performance are paramount. OrbStack emerges as a game-changer, offering a seamless and efficient alternative to Docker Desktop for Mac users. Here’s why OrbStack is the go-to solution for developers looking to optimize their workflow.

Lightning Fast and Lightweight

OrbStack is designed to be incredibly fast and lightweight. It starts in seconds, thanks to turbocharged networking, smooth Rosetta x86 emulation, and VirtioFS file sharing. With less than 0.1% background CPU usage on Apple Silicon and minimal memory consumption, OrbStack ensures that your machine remains responsive and efficient. Say goodbye to battery drain and high resource usage.

Effortless Integration

OrbStack integrates seamlessly with macOS, providing a native experience for Docker and Linux. It supports CLI integration, file sharing, and remote SSH editing with Linux machines. Developers can enjoy Docker as if it were native to macOS, with robust network capabilities and integration.

Simple and Powerful

Getting started with OrbStack is a breeze. It serves as a drop-in replacement for Docker Desktop, allowing you to run Docker containers and your favorite Linux distros effortlessly. The app and command line interface are designed to be simple yet powerful, enabling you to set up Linux machines in just one minute.

Robust Connectivity

OrbStack offers robust connectivity features, including support for IPv6 and ICMP. It ensures painless integration with VPNs and DNS, making it easier to connect between Linux machines and Docker containers. Developers can run x86 containers with Rosetta and enjoy fast, reliable networking and file sharing.

Optimized for Apple Silicon

OrbStack is optimized for Apple Silicon, providing unmatched performance and efficiency. It uses less than 10 MB of disk space out of the box and ensures that your machine remains responsive and efficient. Developers can run Intel machines on Apple Silicon with Rosetta, making it a versatile solution for various development needs.

Packed with Features

OrbStack is packed with features that simplify your workflow and help you move faster. Some of the key features include:

  • 2-second startup

  • 45 Gbps network

  • Seamless macOS integration

  • Docker and Linux machines support

  • Rosetta x86 emulation

  • Dynamic disk usage

  • Native Swift app

  • SSH agent forwarding

  • File sharing

  • 2-way CLI integration

  • Support for 15 Linux distros

  • VPN-friendly

  • Low initial memory usage

  • Accurate clock

  • Works without admin privileges

  • Bind mounts and Docker volumes on Mac

  • Host networking and eBPF support

  • Native Docker UI

Easy Transition from Docker Desktop and Colima

Switching from Docker Desktop or Colima to OrbStack is seamless. OrbStack automatically migrates your Docker Desktop data, including containers, volumes, and images. You can also run OrbStack and Docker Desktop or Colima side-by-side using Docker contexts. Reverting back is just as easy, ensuring a smooth transition.

Docker

while immensely popular and powerful, can be resource-intensive, especially on macOS. Here are some of the key points regarding the "heaviness" of Docker:

  • CPU and Memory Consumption: Docker Desktop can consume significant CPU and memory resources, even when idle. This can lead to slower performance of other applications and overall system sluggishness.

  • Disk Space: Docker images and containers can take up a considerable amount of disk space. Over time, as more images and containers are created, the disk usage can grow substantially, requiring regular cleanup.

  • Battery Drain: On laptops, especially MacBooks, Docker Desktop can lead to noticeable battery drain. The constant background processes and resource usage can reduce battery life significantly.

  • Complex Virtualization: Docker on macOS relies on a virtual machine (VM) to run Linux containers. This adds an additional layer of complexity and resource usage. The VM itself requires resources, and the overhead of running containers within the VM can further impact performance.

  • Network Overhead: Networking in Docker can introduce additional overhead. The virtual network interfaces and the need to bridge between the host and container networks can lead to increased latency and reduced network performance.

  • Startup Time: Starting Docker Desktop can be slow, as it needs to initialize the VM and the Docker engine. This startup time can be a hindrance, especially when quick access to containers is needed.

  • Maintenance: Managing Docker involves regular maintenance tasks such as cleaning up unused images, containers, and volumes. Failure to perform these tasks can lead to bloated disk usage and degraded performance over time.

  • Compatibility Issues: Docker's reliance on virtualization can sometimes lead to compatibility issues with other software, particularly those that also use virtualization or require low-level system access.

Installation and Usage of OrbStack

Installation

  1. Download and Open: Simply download OrbStack from the official website and open it. No installation is needed.

  2. Homebrew: Alternatively, you can install OrbStack using Homebrew:

     brew install orbstack
    

Getting Started

OrbStack is ready to use out of the box. Here are some initial steps to get you started:

  1. Run a Docker Container:

     docker run -p 80:80 docker/getting-started
    
  2. Create and Start a Linux Machine:

    • Choose your favorite Linux distro in the app to create a new machine.

    • Double-click to start it or use the orb command.

Tips for Optimal Usage

  • Docker:

    • Compose and other tools are included.

    • Use volumes at ~/OrbStack/docker for optimal file system performance.

  • CPU Usage:

    • Minimize by stopping containers when not in use.
  • Memory Usage:

    • Decrease memory limit in Preferences for lower usage.
  • Network:

    • Host networking, VPNs, DNS, IPv6, ping, traceroute, etc., just work.

For Linux Machines

  • CLI and GUI:

    • Use the orb command for the command line interface or the native Swift app for GUI.
  • File Sharing:

    • Access macOS files in Linux at the same paths or with /mnt/mac prefix.

    • Access Linux files from macOS at ~/OrbStack or in the app.

  • SSH:

    • Use ssh orb to connect to Linux machines.

    • For Visual Studio Code, install the "Remote - SSH" extension.

  • Integration:

    • Run macOS commands and send notifications from Linux using the mac command.

    • Link commands with mac link.

    • SSH agent is forwarded automatically.

Switching from Docker Desktop or Colima

  • Seamless Transition:

    • Open OrbStack and get started. It will offer to migrate your Docker Desktop data automatically, including containers, volumes, images, and more.
  • Side-by-Side Usage:

    • Use Docker contexts to run OrbStack and Docker Desktop or Colima side-by-side

Reference Documents

  1. Install OrbStack · OrbStack Docs

  2. Quick start · OrbStack Docs

  3. OrbStack · Fast, light, simple Docker & Linux on macOS

The Homepage

https://orbstack.dev/

0
Subscribe to my newsletter

Read articles from Tran Tuan directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Tran Tuan
Tran Tuan

As a seasoned Senior FullStack Web and Mobile Developer, I bring over 10+ years of extensive experience in designing, developing, and deploying robust applications across various platforms. My expertise spans a diverse range of technologies, including PHP, NodeJS, Flutter, ReactNative, VueJS, AngularJS, and ReactJS, enabling me to deliver comprehensive solutions that meet the dynamic needs of modern businesses.