在 macOS 上使用 Docker,很多人第一反应是安装 Docker Desktop。但如果你更想要轻量、可控、少弹窗的方案,Colima 是一个非常顺手的替代:它基于 Lima 虚拟机,在本地启动一个 Linux 环境运行 containerd/Docker 引擎,然后让你继续用熟悉的 docker 命令。
本文按「安装 → 启动 → 日常使用 → 配置优化 → 排错」的顺序整理,适合第一次上手或从 Docker Desktop 迁移。
建议使用 Homebrew 管理安装与升级。若你尚未安装 Homebrew,可参考链接:
工具地址:https://github.com/Homebrew/brew
安装 Colima 与 Docker CLI(只装命令行,不装 Desktop):
brew install colima docker
如果你还需要 Compose(视你的工作流而定):
brew install docker-compose
升级时只需:
brew upgrade colima docker
Colima 以“实例”形式运行(默认实例名通常为 default)。首次启动会创建虚拟机并拉起 Docker 引擎:
colima start
启动后检查状态:
colima status
验证 Docker 是否可用:
docker version
docker info
一旦 Colima 跑起来,你可以继续用熟悉的命令:
docker run --rm hello-world
查看当前 Docker context(多数情况下 Colima 会自动切到它的 context;如果没有,可手动切换):
docker context ls
docker context use colima
(可选)如果你使用 Compose:
docker compose version
开发机资源有限时,合理分配能避免风扇狂转。你可以在启动时指定资源:
colima stop
colima start --cpu 4 --memory 6 --disk 60
你也可以给不同项目创建不同实例(比如“轻量日常”和“重负载构建”分开),避免互相影响。
容器开发常见需求是把本地目录挂载进容器。一般直接在项目目录运行即可:
docker run --rm -v "$PWD":/work -w /work alpine ls
如果你遇到挂载慢、文件变更不同步等情况,建议先确认:
1)你的项目目录是否在常用路径(如用户目录)下;
2)是否存在大量小文件(node_modules、build 产物)导致同步开销很大;
3)是否可以把依赖放到容器内构建,减少对宿主机文件系统的频繁扫描。
问题A:docker 提示无法连接 daemon
通常是 Colima 没启动或 context 不对。按顺序检查:
colima status
docker context ls
docker context use colima
问题B:启动失败或异常退出
优先查看日志并尝试重启:
colima stop
colima start
必要时可以升级到最新版再试:
brew upgrade colima
问题C:端口映射不通
确认容器是否真正监听在 0.0.0.0,以及端口映射参数是否正确:
docker ps
docker logs <container_id>
另外,检查是否有本机同端口服务占用。