MacOS下Docker正常运行但AWS SAM build失败的问题求助
解决M2 Mac上AWS SAM CLI无法检测到运行中Docker的问题
问题描述
使用AWS SAM部署PyTorch机器学习模板时,执行sam build报错:
Build Failed Error: Building image for InferenceFunction requires Docker. is Docker running?
但Docker Desktop已正常运行,docker run hello-world可验证Docker功能正常,设备配置为Macbook Air M2、Docker Desktop 4.18.0、SAM CLI 1.78.0。
解决方案
尝试以下步骤排查修复:
检查并设置DOCKER_HOST环境变量
终端执行echo $DOCKER_HOST,若输出为空或路径错误,手动设置Docker socket路径:export DOCKER_HOST=unix:///var/run/docker.sock设置完成后重新运行
sam build。验证Docker访问权限
- 打开Docker Desktop,进入
设置 > 资源 > 文件共享,确认/var/run/docker.sock已在共享列表中; - 若权限仍有问题,可临时用
sudo sam build测试(不建议长期使用sudo,排查后需调整权限)。
- 打开Docker Desktop,进入
调整Docker Rosetta转译设置
进入Docker Desktop设置 > 开发中功能,勾选在Apple Silicon上使用Rosetta进行x86/amd64模拟,重启Docker Desktop后重试sam build。升级或重装SAM CLI
若为Homebrew安装,执行brew upgrade aws-sam-cli升级到最新版本;若问题依旧,卸载后重新安装SAM CLI,确保与Docker版本兼容。指定Docker主机网络构建
执行sam build时添加网络参数,强制使用主机网络:sam build --docker-network host
内容的提问来源于stack exchange,提问作者Poch Phachara
相关产品推荐
相关产品推荐

