Docker新手运行go-skynet LocalAI遇镜像清单匹配错误求助
核心原因
该错误是因为当前使用的Docker Windows容器模式下,LocalAI官方镜像未适配Windows 10.0.19045版本的amd64镜像包,或是默认拉取的镜像不支持当前Windows环境。
具体解决步骤
切换Docker到Linux容器模式
LocalAI官方镜像基于Linux构建,Windows容器支持有限,切换到Linux容器模式是最直接的解决方式:
右键任务栏中的Docker图标,选择Switch to Linux containers,等待Docker重启完成后,重新执行docker-compose up -d --pull always或docker-compose up -d --build命令。强制指定Linux平台拉取镜像
若不想切换容器模式,可在docker-compose.yml中添加平台指定(需Docker已开启WSL2后端):
打开docker-compose.yml文件,在services下的LocalAI服务中加入platform: linux/amd64配置,示例如下:services: localai: image: ghcr.io/go-skynet/localai:latest platform: linux/amd64 # 保留原有其他配置保存后重新执行
docker-compose up -d --pull always。处理RWKV模型构建错误
针对docker build -t rwkv-converter -f Dockerfile.build .的问题,可采用两种方式解决:- 切换到Linux容器模式后重新构建;
- 在构建命令中指定平台:
docker build --platform linux/amd64 -t rwkv-converter -f Dockerfile.build .
检查WSL2后端状态
若切换Linux容器模式时提示需要WSL2,以管理员身份打开PowerShell执行以下命令安装:wsl --install安装完成后重启电脑,再切换Docker到Linux容器模式。
内容的提问来源于stack exchange,提问作者Keihura

