MacBook的ARM架构(M芯片)操作虚拟机的docker拉取镜像问题
源自于2025.7.20的一个下午 我跟着教程系统的学习在linux上操作docker,当我安装好docker,在systemctl status docker的时候看到绿色的active按耐不住内心的爽,不过马上就出现了以下的一些问题
- 在demon文件里配好了阿里云镜像加速地址但是pull的时候总看见docker官网地址
- 在gpt的带领下遨游在linux的demon文件权限下,和一些网络连接测试
经历一下午的探索,症结居然是我的macbook是m1芯片,也就是arm64架构。但是虚拟机软件UTM的NAT并不支持桥接网络设置,恰好docker deamon的启动时需要外网通信,所以就理所应当的夹在不了deamon.json,就算路径和文件都没错。
解决方案1
在每次pull镜像的时候手动拼接上镜像源的地址,类似于
docker pull docker.1ms.run/mysql
可用镜像源地址参考:https://www.dhzy.fun/archives/6852.html
解决方案2
用podman,因为podman设计对于以下友好且可兼容docker命令
- 无法桥接网络;
- 没有 Docker Desktop;
- 无法访问 Docker 默认仓库;
- 是 ARM 架构;
- 对守护进程的依赖敏感。
不用守护进程做网络管理也就是说不需要在加载文件的时候访问外网