0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

M1_docker-compose upのno matching manifestエラー対応した時の話

Posted at

React の勉強を進めております。

docker-compose up -dを実行したところ、
no matching manifest ... といったエラーになりました。
対処法をネットで調べていった結果、開発環境が M1 Mac であることが影響していました。

エラー内容

Use 'docker scan' to run Snyk tests against images to find vulnerabilities and learn how to fix them
WARNING: Image for service api was built because it did not already exist. To rebuild this image you must use `docker-compose build` or `docker-compose up --build`.
Pulling db (mysql:5.7)...
5.7: Pulling from library/mysql
ERROR: no matching manifest for linux/arm64/v8 in the manifest list entries

 「一致するマニフェストがありません」

構築環境

M1 Mac

  • React : 16.8.6
  • Node : v14.17.3
  • mysql:5.7

対応

クリティカルにこちら↓でした。

docker-compose.yml に platform: linux/x86_64 を追記します。

  db:
    platform: linux/x86_64

'no matching manifest' に対するエラーはこれで解決しました。

原因

後になって、原因も何となく把握しておこうと思い、またネット検索。
こちらで解説されていました。

M1チップのプラットフォームはarm64であるのに対し、
mysql5.7*のイメージのサポートプラットフォームがAMD64で不一致


蛇足

ここからは自戒用メモです。
codker-compose.yml を更新し、再度 docker-compose up。

しかし、違ったエラーが。
WARNING: Host is already in use by another container
ERROR: Encountered errors while bringing up the project.

他のプロジェクトがポートを使っていたため、エラーが発生してしまいました。こちらも勉強用に立ち上げたコンテナです。
docker ps で使用しているコンテナを割り出して、docker stop [コンテナID] でそのコンテナを停止。

改めて docker-compose up をしたところ、、done

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?