# Mac 上想跑 Linux 容器，又不想装 Docker Desktop，Colima 官方怎么起？

**URL:** <https://www.shiqidu.com/t/topic/2075>\
**Category:** 问题求助\
**Tags:** Linux, 问与答, 开源软件, macOS, Docker\
**Created:** [2026 年11 月 14 日 05:47 UTC](https://www.shiqidu.com/t/topic/2075 "2026-11-14T05:47:27Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

作者： ![shiqidu\_editor](https://www.shiqidu.com/user_avatar/www.shiqidu.com/shiqidu_editor/32/528_2.png) [@shiqidu\_editor](https://www.shiqidu.com/u/shiqidu_editor)\
发布日期： [2026 年11 月 14 日 05:47 UTC](https://www.shiqidu.com/t/topic/2075/1 "2026-11-14T05:47:27Z")

</div>

本机要跑 Linux 容器，公司那边又不让装 Docker Desktop。需要的是一套能在这台 Mac 上把运行时拉起来的官方方案，不是去绕过桌面版的许可证，也不是去改它的安装包。

[abiosoft/colima](https://github.com/abiosoft/colima) 的 README 把项目写成：在 macOS（也支持 Linux）上，用尽量少的配置来跑容器运行时。项目目标也写在同一页：在 macOS 上提供容器运行时，并把准备工作尽量压到最少。名字来自 Containers on Lima。Lima 本身又常被说成 Linux Machines，所以也可以理解成在 Linux 虚拟机里跑容器。它支持 Intel 和 Apple Silicon 的 macOS，也支持 Linux。README 还把自动端口转发、卷挂载、多实例，以及多种容器运行时列成特性，并且写了简单的命令行接口和比较合理的默认值。装好之后并不会自动进入运行状态，需要自己执行启动命令，才会拉起那台用来跑容器的虚拟机。站内这篇 [Podman 和 Docker 的易混点](https://www.shiqidu.com/t/topic/1994) 说的是引擎和 daemon 的心智，这篇 [Compose 文件名与命令](https://www.shiqidu.com/t/topic/2065) 说的是编排文件和命令怎么写，都和在 Mac 上把容器环境拉起来不是同一层。Colima 解决的是这台 Mac 上的运行时从哪里来：先有虚拟机和运行时，再谈用哪个客户端去跑镜像、怎么写编排文件。

安装方面，README 列了 Homebrew、MacPorts、Nix 和 Mise。Homebrew 是 `brew install colima`，MacPorts 是 `sudo port install colima`，Nix 是 `nix-env -iA nixpkgs.colima`，Mise 是 `mise use -g colima@latest`。如果只想跟开发分支，Homebrew 还可以 `brew install --HEAD colima`，README 注明这条只适用于 Homebrew。

拉起默认环境，用的是 `colima start`。更多选项看 `colima --help` 和 `colima start --help`，也可以 `colima start --edit` 打开配置再启动。初始启动时可以指定运行时，不写则默认是 Docker。要用 Docker 运行时，本机还得另外装 Docker 客户端，这和安装桌面版不是一回事。README 写的是 `brew install docker`。`colima start` 之后，就可以在 macOS 上直接用 `docker` 客户端，不必再做额外设置，官方示例是 `docker run hello-world` 和 `docker ps`。日常敲的还是熟悉的 `docker` 命令，只是后面的引擎改由 Colima 拉起的那台 Linux 虚拟机来提供。

也可以换成别的运行时。`colima start --runtime containerd` 会装好 Containerd，之后用 `colima nerdctl` 跟它交互。官方建议再执行 `colima nerdctl install`，把 `nerdctl` 的别名脚本装进 `PATH`。官方示例是 `nerdctl run hello-world` 和 `nerdctl ps`。若要启用 Kubernetes，需要先装 `kubectl`（README 写的是 `brew install kubectl`），启动时加上 `--kubernetes`，官方示例是 `kubectl run caddy --image=caddy` 和 `kubectl get pods`。文档还补充：Docker 运行时下，用 Docker 构建或拉取的镜像，Kubernetes 可以直接用。Containerd 运行时下，则是在 `k8s.io` 命名空间里构建或拉取的镜像，才对 Kubernetes 可见。Incus 运行时是 `colima start --runtime incus`，本机需要 `incus` 客户端，README 写的是 `brew install incus`。`colima start` 之后即可在 macOS 上直接使用，官方示例是 `incus launch images:alpine/edge` 和 `incus list`。其中在 Incus 上跑虚拟机，官方注明只在 M3 或更新的 Apple Silicon 设备上受支持。这些都写在 README 的运行时说明里，按自己的环境选即可，不是必须一次全开。

默认虚拟机是 2 个 CPU、2GiB 内存、100GiB 磁盘。如果默认规格不合适，按 README 的办法改。创建时可以把 `--cpu`、`--memory`、`--disk`、`--runtime` 传给 `colima start`，也可以走 `colima start --edit`。官方举过两个例子：`colima start --cpu 1 --memory 2 --disk 10` 会按 1 个 CPU、2GiB 内存、10GiB 磁盘来建。要改已经建好的虚拟机，则是先 `colima stop`，再例如 `colima start --cpu 4 --memory 8`。磁盘可以在虚拟机创建之后再加大。日常停掉环境，用的也是同一条 `colima stop`。停掉之后若要重新使用，再执行 `colima start` 即可。若同时还要改 CPU 或内存，把新的参数带在这一次启动命令上，和 README 的修改示例一样。Apple Silicon 上如果还需要用 Rosetta 2 做模拟，README 写了 `colima start --vm-type=vz --vz-rosetta`，并注明需要 v0.5.3 以及 macOS 13（Ventura）或更新版本。多实例也是官方列出的能力，具体参数看 `colima start --help`。

这样就能在不装 Docker Desktop 的前提下，在 Mac 上把 Linux 容器跑起来。你那边是准备用默认的 Docker 运行时，还是一开始就要上 containerd？
