Apple Container Machine 苹果官方虚拟机

区别介绍

和其它虚拟化软件的区别

特性Apple Container Machine (官方)Lima (开源社区)OrbStack (商业软件)
性质苹果官方开源项目CNCF 开源项目商业软件,提供免费版本
核心体验高度集成,类似 WSL2类似 WSL2 的 Linux 虚拟机号称“增强版 WSL”
安装方式从 GitHub 发布页下载通过 Homebrew 一键安装 (brew install lima)下载 DMG 安装包,图形化安装
易用性命令行工具 (container machine run)命令行工具 (limactl start)图形化应用,提供菜单栏管理
主要特点运行完整 Linux 环境 自动挂载 Mac 的 $HOME 目录 支持 systemd自动文件共享和端口转发支持 Docker, K8s 等资源占用低,启动快速度极快,2秒启动资源占用极低深度集成 Docker, K8s
适用人群追求官方原生体验的开发者喜欢开源、命令行和高度定制的开发者追求极致性能和易用性的开发者

和 docker 的区别

特性Apple Container Machine普通 Docker 容器
本质一个持久的 Linux 虚拟机环境一个运行中的 Linux 进程
核心目标提供完整的、可持久化的 Linux 开发环境运行无状态、临时性的应用程序或进程
生命周期持久化,需要显式地 stop 和 rm临时性,进程结束即退出
数据存储分离:环境由配置声明,数据(如代码)存储在 Mac 的 $HOME 目录数据通常随容器删除而消失,除非使用卷(Volume)持久化
系统支持支持 systemd,可以像管理完整系统一样管理服务通常不支持 systemd,推荐单进程运行
文件系统自动挂载 Mac 的 $HOME 目录,文件在 Mac 和 Linux 环境间实时同步需手动配置挂载卷(Volume)或绑定挂载(Bind Mount)
用法类比更接近 WSL2 或 Lima更接近 Docker 本身

下载地址

https://github.com/apple/container

下载完成后,进行一步一步的安装即可,都是可视化安装。

常用命令

启动主服务


container system start
启动 Apple Container 的后台服务,这是运行所有容器和 machine 的前提。第一次启动需要下载相关程序。

镜像管理

container image list查看当前的镜像文件
container image pull docker.io/nginx:latest拉取nginx镜像

容器管理

container list查看当前运行的容器
container list --all查看当前所有的容器,包括已停止的容器
container run -d --name nginx nginx:latest启动一个nginx容器
container start/stop/status nginx启动停止查看容器状态
container rm nginx删除容器

创建系统

安装系统

从 docker hub 拉取
container machine create centos:centos7.9.2009 --name centos7创建一个 centos 系统

管理系统

container machine list(container m ls) 查看创建好的 Linux 环境
container machine run -n centos7
container machine run -n centos7 -u root
进入系统
container machine stop centos7停止系统
container machine rm centos7删除系统
container machine inspect centos7查看系统的详细信息
container machine set-default centos7设置为默认系统

© 版权声明
THE END
点赞10 分享