Docker multi-stage builds で、LABEL maintainer="..." を記述する位置に関するちょっとした注意点です。
以下のように最後のFROMの後に書く必要があるようです1。
FROM ...
...
FROM ...
LABEL maintainer="..."
...
最初のFROMの後ろにLABEL maintainer="..."を書いてしまうと、ちゃんとLABELが残らないことに気づきました。公式のhttps://docs.docker.com/develop/develop-images/multistage-build/ではLABELに触れていなかったので、僕と同じく気づかずに使っている人もいるかも知れないと思って記事にしました。(なんとなくLABELは全体に反映されてくれるかなと思ってました。)
おまけ: LABELの確認方法
ビルドしたイメージのLABELの確認方法は以下できました。
docker inspect --format "{{.Config.Labels}}" <イメージ名とかコンテナとか>
出力例
map[maintainer:Ryo Ota <メールアドレス>]
(参考:https://stackoverflow.com/a/33884893/2885946)
-
FROMの前でもいいのかも?そこは未検証です。 ↩