1 为什么Mac需要Docker?
Mac系统基于Unix,但其内核并非Linux。而Docker容器核心依赖于Linux特有的cgroup和namespace等技术。因此,Mac上运行Docker需要通过虚拟化技术创建Linux虚拟机作为底层支撑。
Docker Desktop for Mac采用了隐身模式下的轻量级虚拟机(基于HyperKit),用户几乎无感知,体验如同原生应用一般流畅。
2 安装前的系统要求
在开始安装之前,请确保你的Mac满足以下基本要求:
操作系统:macOS 10.13(High Sierra)或更高版本(推荐升级到最新版本以获得最佳支持)。硬件支持:2010年或更新的Mac机型,支持Intel MMU虚拟化(即扩展页表EPT和无限制模式)。内存:至少4GB RAM(建议8GB或以上以获得更好体验)。存储空间:至少4GB可用磁盘空间(实际根据容器使用情况可能需要更多)。VirtualBox:如果之前安装过VirtualBox,请确保其版本不低于4.3.30(以免与Docker for Mac产生兼容性问题)。
你可以点击左上角苹果菜单 > “关于本机” 查看你的系统信息。如果你的系统不满足这些要求,可以考虑安装Docker Toolbox。
3 两种安装方法:任选其一
3.1 方法一:使用Homebrew安装(适合喜欢命令行操作的用户)
Homebrew是Mac上非常流行的包管理器,使用它可以轻松安装Docker。
打开终端(Terminal)输入以下命令并回车:
brew install --cask docker
注意:旧版本Homebrew中命令可能是 。
brew cask install docker
等待安装完成。Homebrew会自动下载并安装Docker Desktop for Mac。
https://box.kancloud.cn/3604e7d3d01f34a25bcd7500d8ccd22a_832x452.png
3.2 方法二:手动下载安装(适合所有用户)
如果你不喜欢使用命令行,或者Homebrew安装遇到问题,可以直接手动下载:
访问Docker官网的Mac版下载页面:https://desktop.docker.com/mac/stable/Docker.dmg双击下载的 .dmg 文件将出现的鲸鱼图标拖拽到 Applications 文件夹在应用程序文件夹中找到 Docker.app 并双击启动
注意:安装过程中可能会询问你的macOS登录密码,需要输入才能继续。
4 首次配置与运行Docker
安装完成后,你需要进行一些初始配置:
在应用程序文件夹中双击Docker图标启动Docker Desktop系统会提示你授权Docker使用系统资源,输入管理员密码完成授权你将看到Docker的欢迎界面和服务协议,点击“Accept”接受条款Docker会开始初始化,过程中可能会提示你选择配置,通常选择默认配置即可完成后,右上角菜单栏会出现一个鲸鱼图标🐳,这表示Docker正在运行
https://box.kancloud.cn/85300e55e6bbfdce91db8bf9cf834300_770x120.png
5 验证安装与基本命令
安装完成后,让我们验证一下Docker是否正常工作:
打开终端(Terminal)输入以下命令检查Docker版本:
docker --version
如果安装成功,会显示类似下面的信息:
Docker version 24.0.2, build cb74dfc
更全面地检查安装情况:
docker info
这个命令会显示Docker客户端和服务的详细信息。
运行经典的Hello World容器测试:
docker run hello-world
如果看到”Hello from Docker!”的欢迎信息,说明Docker已成功安装并运行。
6 配置国内镜像加速器
由于网络原因,在国内直接拉取Docker镜像可能非常缓慢。配置国内镜像加速器可以极大提升下载速度:
点击菜单栏的鲸鱼图标 🐳选择 Preferences…(或Settings…)进入 Docker Engine 配置在注册镜像部分(Registry mirrors),添加国内镜像源:
{
"registry-mirrors": [
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com"
]
}
点击 “Apply & Restart” 按钮应用配置并重启Docker
常用国内镜像地址:
网易:http://hub-mirror.c.163.com:cite[3]:cite[7]百度:https://mirror.baidubce.com阿里云:需要注册后获取专属加速地址
配置完成后,可以通过 命令查看是否生效。
docker info
7 完整示例:在Docker中运行Nginx服务器
让我们通过一个实际例子来体验Docker的便利性。以下步骤将在Docker中运行一个Nginx Web服务器:
拉取Nginx镜像(如果已配置镜像加速器,这一步会很快):
docker pull nginx
运行Nginx容器:
docker run -d -p 80:80 --name webserver nginx
参数说明:
:后台运行容器
-d:将主机的80端口映射到容器的80端口
-p 80:80:为容器指定一个名称
--name webserver
打开浏览器访问 http://localhost,如果看到 “Welcome to nginx!” 的默认页面,说明Nginx服务器已成功运行!
https://box.kancloud.cn/d313e45fe7f0d1d41ee9401c48e7f5ed_1394x738.png
查看运行中的容器:
docker ps
停止并移除Nginx服务器:
docker stop webserver
docker rm webserver
8 常见问题与解决方案
8.1 Docker Desktop启动失败
可能原因:系统资源不足或权限问题解决方案:
确保系统满足最低要求重启Mac后再次尝试检查是否有其他程序占用大量内存或CPU
8.2 权限不足错误
可能原因:Docker命令需要sudo权限解决方案:
Docker Desktop会自动配置用户组权限,通常不需要sudo如果遇到权限问题,尝试重启Docker Desktop
8.3 端口已被占用
可能原因:Mac上已有其他程序占用相同端口解决方案:
更改容器映射端口:停止占用端口的其他服务
-p 8080:80
8.4 磁盘空间不足
可能原因:Docker镜像和容器占用大量空间解决方案:
定期清理未使用的镜像:删除无用的容器和镜像
docker image prune
9 Docker Desktop界面介绍
Docker Desktop提供了直观的图形界面,方便管理容器、镜像和扩展:
Dashboard:查看运行中的容器和基本状态Images:管理本地存储的Docker镜像Volumes:管理数据卷Extensions:安装扩展增强功能(如Redis、MySQL等一键安装)Settings:系统设置,包括资源分配、网络、镜像加速等
通过图形界面,即使不熟悉命令行也能轻松完成大部分常见操作。
10 进阶技巧与最佳实践
资源分配调整:在Docker Desktop设置中,可以根据需要调整CPU、内存和磁盘空间的分配量,特别是运行多个容器时,适当增加资源可提升性能。使用Docker Compose管理多容器应用:Docker Desktop已包含Docker Compose,可以通过yml文件定义和运行多容器应用。数据持久化:注意容器停止后数据会丢失,重要数据应使用卷(Volumes) 或绑定挂载(Bind Mounts) 实现持久化。定期清理:定期使用 清理不再使用的镜像、容器和网络,节省磁盘空间。
docker system prune
总结
通过本文的详细指导,你应该已经成功在Mac上安装了Docker,并运行了你的第一个容器。Docker的强大功能远不止于此,接下来你可以探索更多容器化应用,学习Dockerfile构建自定义镜像,甚至尝试Kubernetes容器编排。
Docker真正实现了”一次构建,到处运行”的理念,是现代应用开发和部署不可或缺的工具。现在就开始你的Docker之旅,享受容器化带来的开发便利和效率提升吧!
下载链接汇总:
Docker Desktop for Mac稳定版:https://desktop.docker.com/mac/stable/Docker.dmgDocker文档:https://docs.docker.com/docker-for-mac/