Introducing OrbStack, the ideal Docker Desktop alternative for Mac users. With its simplicity and efficiency, OrbStack empowers developers and system administrators to effortlessly run Docker containers and manage Linux environments on macOS. Experience a fast, lightweight, and user-friendly solution that enhances productivity. Say hello to OrbStack and revolutionize your Docker experience on your Mac. In this article, we will go over the OrbStack and demonstrate how to install OrbStack.
What is OrbStack?
OrbStack is a tool for running Docker containers and Linux workstations on macOS. It provides a strong and streamlined experience similar to a combination of WSL (Windows Subsystem for Linux) and Docker Desktop, but with additional capabilities and simplicity. Its fundamental components are written in a combination of Go, Rust, and C. OrbStack does not use the Electron framework, thus it is faster, more compatible, and more efficient than other Electron-based apps.
Why should you use OrbStack?
Here are some of the reasons why you should utilize OrbStack:
Lightning Fast: OrbStack boots up in 2 seconds and features optimized networking (45 Gbps) and disk, Rosetta x86 emulation. This implies that your containers and applications will start quickly and operate smoothly.
Feather Light: OrbStack is feather light in terms of CPU and disk utilization, works with less memory, and is a native Swift app. This means it will not slow down your Mac and will not drain its battery.
Effortlessly Simple: OrbStack provides minimum setup, 2-way CLI integration and file access, VPN support for remote VS Code, and SSH agent forwarding. This means you’ll be able to get started with OrbStack fast and easily, and you’ll have access to all of the functionality you’ll need to run your containers and applications.
Powerful: OrbStack is capable of running Docker containers as well as entire Linux distributions (soon Kubernetes) with powerful networking. This means you can use any application on your Mac, independent of its operating system.
How to install OrbStack?
OrbStack requires macOS 12.3 or later for a seamless experience. Installation choices include a simple download from the OrbStack website or Homebrew installation. Choose the technique that works best for you and enjoy OrbStack on your Mac.
brew install orbstack
OrbStack, once installed, delivers a ready-to-use Docker environment out of the box.
docker run -it -p 80:80 docker/getting-started
The official documentation includes a detailed installation instruction for OrbStack.
Features of OrbStack
Here We describes some of the features of Orbstack:
- Docker: OrbStack makes it simple to create and manage Docker containers. It includes optimized networking and file sharing, allowing you to connect your containers to one another and to your local network with ease. OrbStack may also be used to debug containers, and it comes with Docker Compose and other tools to help you manage your containers.
- Linux machines: OrbStack enables you to run full-fledged Linux machines on your Mac. You can use Visual Studio Code (or your chosen editor) and SSH agent forwarding to work with a variety of distributions. With Rosetta, OrbStack also allows you to run Intel machines on Apple silicon.
- Command line integration: OrbStack offers full command line integration. You can easily run scripts and copy data across your Mac and Linux computers. You may also use Linux to send notifications and open files and links.
- Network connectivity: OrbStack makes it simple to link your Linux computers and Docker containers to each other and to the internet. It supports IPv6 and ICMP and can be used with VPNs and DNS.
All measurements are acquired with an M1 Max MacBook Pro unless otherwise noted. In these experiments, the difference between M1 and M1 Max is frequently indistinguishable. Intel should be faster, whereas M2 should be slower.
The time it takes to start OrbStack on a single system and run a command was measured using Hyperfine. The following bash command was used:
hyperfine -p ‘orb shutdown -f || :’ ‘orb -m ubuntu echo’
In the case of Docker Desktop with Colima, a script was created to manage app initialization and to continuously check if the Docker daemon is available. The script polls the Docker daemon every 100 milliseconds until it is ready. This guarantees that the app waits for the Docker daemon to be fully functioning before issuing any more commands or performing any operations.
Usage of CPU
To account for intermittent bursty CPU utilization, the following methodology was used to calculate the long-term average CPU usage after running each app and waiting for it to settle. This entailed taking one sample right away and another after 10 minutes. The following bash command was used to record the CPU time and elapsed time since the start:
ps -axco time,etime,command | grep VirtualMachine
To compute the average CPU utilization, the formula (cpu_time_now – cpu_time_start) / (elapsed_time_now – elapsed_time_start) * 100 was used.
The following commands were used to measure the guest-to-host TCP throughput against a server on macOS using iperf3:
The iperf3 server was started on macOS:
# on macOS iperf3 -s
The iperf3 client command was executed within each app (guest) to assess throughput to the host (macOS):
# in app # -4: IPv4 is faster in OrbStack, and other apps don’t support IPv iperf3 -4 -c host.docker.internal
In the host-to-guest direction (iperf3 -R), the apps perform similarly, but the figures are lower overall (all in Gbps):
The following steps were followed to determine each app’s memory usage:
- Start each app and give it enough time to normalize its memory use.
- On macOS, use the Activity Monitor to monitor memory use.
- Save the memory use value from the Activity Monitor.
Applications of OrbStack
OrbStack is a versatile tool that can be used for a wide range of tasks like as development, testing, and learning.
- Development: OrbStack can be used to create applications in any programming language or framework. It delivers a fast and dependable development environment and integrates smoothly with Mac products. As a result, it is an excellent alternative for developers who want to get started quickly and easily.
- Testing: OrbStack can also be used to test apps in real-world scenarios. This is significant because it enables developers to assure that their programs will function properly in production. OrbStack includes a number of testing tools, including network tools such as ping and traceroute.
- Learning: OrbStack can also be used to learn new skills and experiment with new technology. It offers a sandbox environment in which developers can experiment with various Linux distributions or Kubernetes. This makes it an excellent choice for
Also read: You might also find useful our guide on How to download Auto GPT on Docker
Frequently asked questions
To summarize, OrbStack is the ideal Docker Desktop solution for Mac users. OrbStack revolutionizes Docker management on macOS with its lightning-fast performance, featherweight resource utilization, simple simplicity, and strong capabilities. Upgrade your Docker experience today to achieve more productivity on your Mac. Please feel free to share your thoughts and feedback in the comment section below.