Apple M2 Pro芯片 + docker-compose up + mysql、elasticsearch pull失败问题的解法

背景

  • (1)从github上git clone了一个基于Spring Boot的Java项目,查看readme,发现要在项目的根目录下,执行“docker-compose up”。
  • (2)执行“docker-compose up”的前提是,在macos上要安装并启动docker。
  • (3)根目录下有一个docker-compose.yml的配置文件,里面有rabbit、mysql、elasticsearch的image说明。
  • (4)执行“docker-compose up”,mysql、elasticsearch pull失败问题。

解决办法

1 mysql pull失败

  • (1)报错:no matching manifest for linux/arm64/v8 in the manifest list entries
  • (2)google搜索后,发现相关的stackoverflow文章。
  • (3)尝试后,解决了问题,具体如下
    之前的配置写法:
  mysql57:
    image: mysql:5.7
    container_name: common-mistakes-mysql57
    ...

现在的配置写法,增加:platform: linux/x86_64

  mysql57:
    platform: linux/x86_64
    image: mysql:5.7
    container_name: common-mistakes-mysql57
    ...

2 elasticsearch pull失败问题

  • (1)报错:Error response from daemon: Head “https://docker.elastic.co/v2/elasticsearch/elasticsearch/manifests/7.5.2”: Get “https://docker-auth.elastic.co/auth?scope=repository%3Aelasticsearch%2Felasticsearch%3Apull&service=token-service”: context deadline exceeded (Client.Timeout exceeded while awaiting headers)
  • (2)google搜索关键字:docker-compose up elasticsearch Error response from daemon,发现发现相关的stackoverflow文章
  • (3)尝试后,解决了问题,具体如下
    打开docker客户端的设置,如下图勾选“Use containerd for pulling and storing images”,点击“Apply & restart”
    Apple M2 Pro芯片 + docker-compose up + mysql、elasticsearch pull失败问题的解法_第1张图片

最后执行:docker-compose up,成功!

  • stackoverflow就是牛啊!

你可能感兴趣的:(搭建环境,#,Java,docker,mysql,elasticsearch)