MacOS系统:从Docker Desktop迁移到Colima + 外置硬盘存储

MacOS系统:从Docker Desktop迁移到Colima + 外置硬盘存储实战

    • [一、 为什么这么干?](#一、 为什么这么干?)
      • [1. 为什么要放弃Docker Desktop?](#1. 为什么要放弃Docker Desktop?)
    • [二、彻底告别Docker Desktop](#二、彻底告别Docker Desktop)
      • [1. 先做数据清理](#1. 先做数据清理)
      • [2. 彻底清理(命令行版)](#2. 彻底清理(命令行版))
    • 三、迎接Colima
      • [1. 安装](#1. 安装)
      • [2. 硬盘搬家](#2. 硬盘搬家)
      • [3. 启动新世界](#3. 启动新世界)
    • [四、 验证迁移效果](#四、 验证迁移效果)
      • [1. 状态查看](#1. 状态查看)
      • [2. 日常管理命令](#2. 日常管理命令)
      • [3. 性能调优(可选)](#3. 性能调优(可选))
    • 五、血泪经验总结
      • [1. **硬盘使用规范**](#1. 硬盘使用规范)
      • [2. **空间管理技巧**](#2. 空间管理技巧)
      • [3. **后悔药**](#3. 后悔药)
    • 六、迁移成果

一、 为什么这么干?

1. 为什么要放弃Docker Desktop?

  • 曾经的我一直在Mac上使用Docker搭建开发环境。但我的256G Mac硬盘实在太小了,随着项目增多,镜像、容器不断堆积,最少时候的硬盘空间甚至剩下不到1G ~。

  • Docker Desktop在macOS上其实是偷偷运行着一个Linux虚拟机,所有容器、镜像都会往电脑硬盘上塞,对我这种小硬盘简直分分钟撑爆。

  • 而且虽然有GUI比较方便,但是实在是太耗性能,我的电脑有时候会被卡死~

后来忍无可忍,入手了外接硬盘(江湖人称"尿袋"):阿卡西斯硬盘盒 + 西部数据SN7100 2T固态。电脑被清空的感觉简直不要太爽!!!


二、彻底告别Docker Desktop

1. 先做数据清理

bash 复制代码
# 停止所有容器
docker container stop $(docker container ls -aq)

# 大扫除(谨慎操作!)
docker system prune -a --volumes

2. 彻底清理(命令行版)

bash 复制代码
# 卸载
sudo rm -rf /Applications/Docker.app

# 清理命令行工具
sudo rm -f /usr/local/bin/docker* 
sudo rm -f /usr/local/bin/com.docker.*
sudo rm -f /usr/local/bin/{hub-tool,vpnkit}

# 删除数据
rm -rf ~/.docker
rm -rf ~/Library/{Containers,Application\ Support}/com.docker.*
rm -rf ~/Library/Group\ Containers/group.com.docker

# 清理系统残留
sudo rm -rf /Library/PrivilegedHelperTools/com.docker.*
sudo rm -f /Library/LaunchDaemons/com.docker.*.plist

💡 血泪教训 :卸载前务必备份重要数据!我执行rm -rf前做了:

bash 复制代码
cp -R ~/.docker ~/docker-backup-final

三、迎接Colima

1. 安装

bash 复制代码
# 1. 基础安装
brew update
brew install colima docker docker-compose

# 2. 检查外接硬盘(我的是MacOS_Outside)
diskutil list

# 3. 创建专用存储目录
mkdir -p /Volumes/MacOS_Outside/Colima/colima-data

2. 硬盘搬家

编辑~/.zshrc文件(如果你用bash就改.bash_profile):

bash 复制代码
# 加入这行代码
export LIMA_HOME="/Volumes/MacOS_Outside/Colima/colima-data"

然后让配置生效:

bash 复制代码
source ~/.zshrc

3. 启动新世界

bash 复制代码
# 首次启动(分配60G空间)
colima start --disk 60

# 我的完整配置(供参考)
colima start \
  --cpu 4 \         # 4核CPU
  --memory 6 \      # 6G内存
  --disk 60 \       # 60G硬盘
  --network-address # 开放网络

实际存储的文件:


四、 验证迁移效果

1. 状态查看

bash 复制代码
# 检查状态
colima status

# 测试经典问候
docker run --rm hello-world

# 查看硬盘占用
docker system df

2. 日常管理命令

bash 复制代码
colima stop    # 下班关机
colima start   # 上班启动
colima delete  # 推倒重来

3. 性能调优(可选)

编辑~/.colima/default/colima.yaml

yaml 复制代码
runtime: docker
vmType: vz       # 虚拟化引擎
rosetta: true    # M芯片加速
mountType: virtiofs # 文件传输加速(需macOS13+)

五、血泪经验总结

1. 硬盘使用规范

  • 每次插硬盘→启动Colima

  • 拔硬盘前必做:

    bash 复制代码
    colima stop
    diskutil unmount /Volumes/MacOS_Outside

2. 空间管理技巧

bash 复制代码
# 每月清理
docker system prune -af --volumes

# 查看空间占用情况
du -h /Volumes/MacOS_Outside/Colima | sort -rh | head -10

3. 后悔药

  • 定期备份关键镜像
  • 重要容器数据挂载到外置硬盘

六、迁移成果

现在我的Docker环境完全运行在外置硬盘上,内置硬盘只占用约100MB(配置文件)。再也不用担心堆项目了!

最后忠告:外置硬盘虽然好,但记得定期备份重要数据。强制拔硬盘,早晚要悲剧 😅

相关推荐
空中海6 分钟前
Docker入门到精通
java·docker·eureka
生而为虫8 分钟前
在VScode中使用Claude Code agent并配置模型(仅mac电脑实际操作,windows电脑未实际操作如有问题可留言)
windows·vscode·macos
BduL OWED1 小时前
Docker:基于自制openjdk8镜像 or 官方openjdk8镜像,制作tomcat镜像
docker·容器·tomcat
.柒宇.1 小时前
AI掘金头条项目 Docker Compose 部署完整教程(附踩坑记录)
运维·后端·python·docker·容器·fastapi
大飞记Python1 小时前
刚从 Win 转 Mac?鼠标滚轮反向、触控板乱跑、第三方鼠标卡顿——这一篇就够了
macos·计算机外设·mac鼠标
国科安芯13 小时前
核电站仪控与监测系统中抗辐射 MCU 芯片应用研究
单片机·嵌入式硬件·macos·无人机·cocos2d·核电站
运维全栈笔记14 小时前
K8S部署Redis高可用全攻略:1主2从3哨兵架构实战
redis·docker·云原生·容器·架构·kubernetes·bootstrap
@大迁世界14 小时前
14个你现在必须关闭的 iOS 26 设置,不然手机很快被它榨干
macos·ios·智能手机·objective-c·cocoa
健忘的萝卜14 小时前
Clawdbot 爆红硅谷,也把 AI Agent 和 Mac mini 推上风口
人工智能·macos·agent·数字员工·clawbot
SCBAiotAigc16 小时前
2026.5.1:`DockerDesktop must be owned by an elevated account`错误的解决办法
人工智能·docker·具身智能