M1 Max执行docker-compose up -d报错:找不到Dockerfile
Docker Compose启动LocalStack报错的原因与解决方法
错误原因
你遇到的报错核心原因是docker-compose.yml中LocalStack服务配置了build字段——Docker Compose只要检测到build配置,就会默认尝试在指定的context目录(此处为./docker)下查找Dockerfile来构建镜像,哪怕你同时指定了image字段,它依然会优先执行构建流程。该问题和M1 Max设备无关,纯粹是配置逻辑错误。
解决方法
因为你原本的需求是直接使用官方预构建的localstack/localstack:latest镜像,不需要自定义构建,所以直接删除build相关的配置块即可。
修改后的完整配置如下:
localstack: image: localstack/localstack:latest container_name: localstack platform: linux/arm64/v8 ports: - "4566:4566" - "4571:4571" environment: - SERVICES=s3,ses,rekognition - DEBUG=1 - DATA_DIR=/tmp/localstack/data volumes: - './.localstack:/tmp/localstack' - './.aws:/root/.aws' - '/var/run/docker.sock:/var/run/docker.sock'
补充说明
如果后续需要自定义LocalStack镜像(比如添加额外依赖、修改默认配置),再重新添加build配置,并在./docker目录下创建对应的Dockerfile即可。
内容的提问来源于stack exchange,提问作者Matthew Husák
相关产品推荐
相关产品推荐

