AMD黑苹果无法使用Docker的解决办法
发布于:
最近研究
Github Actions
, 每次调试修改都直接在线操作,非常麻烦,于是寻找本地调试的方案,找到了act
,然而他需要Docker
支持,于是在安装Docker的过程中出现了一些问题,我查阅了许多资料,国内仅有一篇《AMD黑苹果Docker环境搭建》简单介绍了下,但是综合了一些其他资料,这个作者的办法似乎并不是当前最佳的方法,于是我结合多个文章和反复尝试,遇到的一些问题做个总结。
运行环境
- 主板:华硕(ASUS)PRIME X570-PRO 主板
- CPU:AMD 锐龙 9 5900X
- 显卡:华硕(ASUS)TUF Gaming 3 AMD Radeon RX 5600XT
- macOS Monterey(版本 12.4)
黑苹果相关的说明可以看看我开源的黑苹果Opencore EFI仓库 ASUS-PRIME-X570-PRO-Hackintosh
AMD的Docker问题
之前在公司电脑(B460M-HDV + i7 10700)也是黑苹果,但是都挺正常。所以没想到自己的黑苹果电脑上居然会有安装 Docker
的问题,按照正常macOS下安装Docker的方法:Install Docker Desktop on Mac,我下载了 Intel
版本的 Docker Desktop
。运行时提示如图:
简单查了下才知道,Docker是没有办法直接在AMD(基于 Zen
微架构)的黑苹果下使用的,更早的CPU可能也不支持,这不是重点。总之,需要其他的办法来运行Docker。
解决方案
为什么说之前那篇文章或许不是最佳方案,原因是 Docker Machine
已经废弃了,于是我用另一个方案,成功解决问题。使用 minikube
并结合 virtualbox
驱动实现。
首先准备好,macOS几乎必备的 brew
,这里不多说,安装以下几个软件
brew install virtualbox
为什么单独拿出来,因为安装结束的时候,要输密码,并且重启电脑,安全起见一步步来。重启后接着:
brew install minikube docker
安装完成后,启动
minikube start --driver=virtualbox --keep-context
如果发生错误:提示可能没有启用AMD的虚拟化技术(AMD-V),需要在BIOS中启用,下面的内容需要试试看。
BIOS启用AMD-V虚拟化
不同的主板可能配置选项不同,但是据了解大部分都是才用关键词 svm
选项,我的主板关于该选项默认关闭,将其打开保存重启即可。
我一开始在BIOS找了半天AMD-V,没找打也是浪费了些时间,囧。。。参阅MSI X570 ACE 启用虚拟化(AMD-V)
如果一切正常,那么进而配置 Docker CLI
到你当前 shell
的 minikube
容器
eval $(minikube docker-env)
那么现在就可以正常使用docker命令了。需要使用 Docker Compose
,也要安装
brew install docker-compose
至此,在AMD平台的黑苹果系统下安装使用Docker的问题就解决了~
参考资料:
whidy
一名爱折腾的前端开发工程师,喜欢打篮球和分享 ฅʕ•̫͡•ʔฅ