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
の前でもいいのかも?そこは未検証です。 ↩