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(配置文件)。再也不用担心堆项目了!

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

相关推荐
Jenwein26 分钟前
Linux中使用docker的网络问题
后端·docker
java_logo2 小时前
Docker 部署 Debian 全流程教程
linux·运维·docker·容器·debian
❀͜͡傀儡师2 小时前
基于 docker compose 进行部署PandaWiki
运维·docker·容器
北方的流星2 小时前
更换MacbookAir固态硬盘,并用U盘安装MacOS操作系统
经验分享·macos·学习方法
Xiaoweidumpb4 小时前
Linux Docker docker-compose 部署python脚本
linux·python·docker
Broken Arrows4 小时前
解决同一个宿主机的两个容器无法端口互通报错“No route to host“的问题记录
运维·学习·docker
游戏开发爱好者84 小时前
iOS 26 App 查看电池寿命技巧,多工具组合实践指南
android·macos·ios·小程序·uni-app·cocoa·iphone
xingxing_F5 小时前
Kaleidoscope for mac 文件对比工具
macos
G.Chenhui5 小时前
【Macos】安装 macFUSE 和 SSHFS 实现在 Finder 中挂载服务器目录
服务器·macos
路漫漫其修远兮sjw6 小时前
llamafactory拉取并启动(本地虚拟机)
docker·模型微调·1024程序员节·模型调用