背景
dockerを使用したLAMP構成のWebアプリケーション開発環境構築時、
docker compose build
コマンドにてエラーが発生し、ビルドが成功しなかった
これは私の端末でのみ再現し、他のメンバーの端末では正常にビルドできていた。
対象のDockerfile略
FROM mysql:5.7
RUN apt-get update && apt-get install -y
発生したエラー略
failed to solve: rpc error: code = Unknown desc = executor failed running [/bin/sh -c apt-get update && apt-get install -y]: exit code: 100
#9 4.515 W: GPG error: http://repo.mysql.com/apt/debian buster InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY <パブリックキー>
解決方法
下記のコマンドを実行
$ docker pull mysql:5.7
$ docker compose build --no-cache
原因
GPG keyが古くなっているというニュアンスのエラー。
dockerでやっていなければ新しいものに交換すればいいが、
dockerfileに書く内容のものではない。
そのため、元イメージ mysql:5.7
を、新しいGPG keyを持っているであろうイメージに更新 pull
する。
その上で、キャッシュを使用せずに --no-cache
ビルドを実行する。