Py学习  »  docker

卸载 Docker Desktop !事实已证明,它更牛逼。。。

运维 • 10 月前 • 203 次点击  
来自公众号:民工哥技术之路

macOS 从 2020 年发布 Big Sur 开始,提供了虚拟化的框架,开发者可以在 macOS 上构建基于 Intel/ARM 的 Linux 环境。macOS 上的 Parallels Desktop 和 Docker Desktop 都在使用这个框架,但这二者都比较重。

macOS 上的 Docker Desktop 原本就是饱受诟病,慢、重、资源消耗巨大。OrbStack 的出现就是为了解决这个问题。

简介

OrbStack 是一款零配置就能够轻松进行使用的虚拟机容器软件,现阶段完全的免费,能够免费的提供给个人使用,相对于 Mac上面的其他虚拟机来说更为的简单,对于喜欢在 Mac 上面运行 Linux 个人来说更为的实用。

  • https://kutt.appinn.com/mmBNpX
  • GitHub:https://github.com/orbstack

架构设计上,与 Linux 的集成跟 Windows 的 WSL 类似,采用了共享内核技术,相当于在宿主操作系统的内核之上运行一个独立的用户空间环境,利用宿主操作系统的内核来隔离和管理应用程序的运行环境,甚至可以在 Linux 中直接调用 Mac 的指令。所以它可以做到很小的内存开销,而且可以及时释放不使用的内存。

替代 Docker Desktop

OrbStack 主要有两个作用:替代 Docker Desktop、替代 Linux 虚拟机。

从 OrbStack 官网描述来看,很好、非常好:OrbStack 比 Docker Desktop 启动速度快、网络快、Rosetta x86 模拟、低 CPU 占用、低电量消耗。

替代 Linux 虚拟机

OrbStack 的确让这两件事情变的很快,尤其在 Linux 虚拟机上,如果使用 Parallels Desktop,或 VMware Fusion,安装一台 Linux 至少需要 20 分钟。而在 OrbStack 上,几秒钟就完成了。

对于开发者而言,太方便了。

在这之前我也推荐过一款工具:instantbox – 几秒内启动一个干净的 Linux 系统

特点

快如闪电

通过涡轮增压网络、流畅的Rosetta x86模拟、VirtioFS文件共享和其他针对某些工作负载的优化,在几秒钟内启动。

使用Docker就像它的本机一样

快速构建Docker镜像,享受快速、可靠的网络和文件共享。绑定挂载和端口转发都能正常工作。通过对卷的访问轻松调试容器。用Rosetta运行x86容器。包括Docker Compose和其他工具。

Linux机器,不费吹灰之力

用你喜欢的发行版运行完整的Linux机器。与Visual Studio Code(或你喜欢的编辑器)和SSH代理转发无缝协作。用Rosetta在苹果硅上运行英特尔机器。

一流的命令行集成

生活在终端中?我们认为我们的原生Swift应用很好,但一切都可以通过命令行完成。在Mac和Linux之间轻松地运行命令和复制文件。从Linux发送通知并打开文件和链接。

轻如鸿毛

在Apple Silicon上,OrbStack的后台CPU使用率不到0.1%,它可以节省电力,不影响你的工作。开箱时使用的磁盘空间不到10MB。你永远不会注意到它在运行。

毫不费力的整合

享受Docker,就像它原生在macOS上一样,还有CLI集成、文件共享和与Linux机器的远程SSH编辑。

简洁,服务

简单而强大的应用程序和命令行界面使您可以在1分钟内以最少的设置轻松上手。

OrbStack 安装使用

下载安装的过程特别简单。可以看到如下的界面可以在 macOS 上快速,轻便的创建 Docker 容器和 Linux 环境。执行一下测试的容器:

docker run -it -p 80:80 docker/getting-started

然后再访问 http://localhost/ 即可看到最基础的 Docker 教程。

在这个界面中也可以对容器进行简单的管理。在系统的资源管理器中可以看到 OrbStack 几乎不怎么占用 CPU 和内存。

CPU 消耗

内存消耗

相关命令

OrbStack 也提供了一些管理命令 orbctl,可以直接在命令行使用。

orbctl help

OrbStack 在创建了 Ubuntu 等 Linux 镜像之后也可以使用 SSH 连接

orb -m ubuntu -u root
orb -m ubuntu -u root uname -a

orb 命令还提供了其他一些特性,比如可以在虚拟机中 push 或 pull 来传输文件。

目前的一些局限

OrbStack 虚拟的 Linux 是不支持 GUI 的,不过这也不妨碍,我想大部分开发应该只会使用命令行去管理 Linux 运行环境吧。大致猜想 OrbStack 应该只是用 Docker 开启了一个 Linux 的容器,所以不支持图形化界面也是可以理解的。

总结

总之如果你之前饱受 Docker Desktop 慢的问题困扰,或者之前经常使用 Virtual Box,VMware Fusion 等虚拟化工具在 macOS 上虚拟化 Linux 运行环境,不妨来试试这一款轻量的 OrbStack

参考文章:https://einverne.github.io/post/2023/03/
orbstack-docker-runtime-and-virtual-linux.html 
https://docs.orbstack.dev/benchmarks

---END---


推荐↓↓↓

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/156733
 
203 次点击