在搭载M1芯片的macOS上运行redis:2.8 Docker容器可行吗?
在M1芯片macOS上运行redis:2.8 Docker容器的问题解答
结论
无法直接运行redis:2.8 Docker容器,核心原因是架构不兼容:redis:2.8的官方镜像仅提供x86_64(Intel/AMD)架构版本,而M1芯片属于ARM64架构,直接运行会因指令集不匹配触发执行错误。
解决方案
方法1:通过Rosetta模拟x86架构运行
- 开启Docker的Rosetta模拟功能
- 打开Docker Desktop,进入「设置」→「Features in development」
- 勾选「Use Rosetta for x86/amd64 emulation on Apple Silicon」,重启Docker生效
- 修改
docker-compose.yml,指定容器运行平台为x86架构:version: '2' services: redis: image: redis:2.8 platform: linux/amd64 # 指定x86架构 ports: - "6379:6379" - 重新执行命令启动容器:
docker-compose up redis
方法2:升级至支持ARM64的Redis版本
如果业务允许,推荐使用redis:5及以上版本的官方镜像——这些版本已适配ARM64架构,无需模拟即可在M1 macOS上原生运行,性能更优。修改docker-compose.yml中的镜像标签即可,例如:
version: '2' services: redis: image: redis:5 # 或更高版本如redis:6、redis:7 ports: - "6379:6379"
内容的提问来源于stack exchange,提问作者ray_otto
相关产品推荐
相关产品推荐

