failed to solve with frontend dockerfile.v0: failed to read dockerfile: ~~~: no such file or directoryが解決できた話

症状

フロントエンド、バックエンド、データベースの3つで構成されるWebアプリケーションのdocker-compose.ymlからdocker-compose upしようとしたら データベースのimage(mysql:8.0)のビルドのタイミングでタイトルのエラーが出た

自分の環境でビルドできなくて他人の環境だとビルドできる状況

なんのためにDocker使ってんねん、とわけがわからない状態だった(Docker初心者並感想)

ちなみに、フロントとバックのimageはDockerfileで作成したが、データベースはimageをDockerHubから落としている。

Chromeで検索かけても、「Dockerfileの命名が間違ってました〜」みたいな記事しかヒットしなくて、そもそもDockerfileないねん!って1人でキレてた

解決策

docker pull mysql:8.0

上記をターミナルで入力することでimageをローカルに落としてから再度docker-compose upをする。

これだけで正常に動くようになった

感想

どうやらdocker-composeするときは公式イメージはちゃんと事前にpullしないといけないらしい

docker-compose pull

これでもいいっぽい。友達のPCには既にmysql:8.0のイメージがあったからうまく行ってたっぽいね

なんとなく使ってると、こういう問題に遭遇した時に解決に苦労することがよくわかりましたね…