🐈
DockerイメージからDockerビルド時の履歴を確認する方法とは?
はじめに
CI/CDやDockerに関わる業務をやっておりますが、「Build時にどんな処理をしてDockerイメージができたのかを確認したい」と思う時がありました。
今回は、DockerイメージからDockerビルド時の履歴を確認する方法についてまとめたいと思います。
環境
- Docker 24.0.2
version
$ docker -v
Docker version 24.0.2, build cb74dfc
対応方法
以下のコマンドで確認することが可能です。
コマンド
docker history <イメージ名>:<タグ名>
実行例
$ docker history 555246305565.dkr.ecr.ap-northeast-1.amazonaws.com/apache-test:v1
IMAGE CREATED CREATED BY SIZE COMMENT
53ac4687315d 8 days ago EXPOSE map[80/tcp:{}] 0B buildkit.dockerfile.v0
<missing> 8 days ago COPY index.html /usr/local/apache2/htdocs/ #… 70B buildkit.dockerfile.v0
<missing> 2 weeks ago /bin/sh -c #(nop) CMD ["httpd-foreground"] 0B
<missing> 2 weeks ago /bin/sh -c #(nop) EXPOSE 80 0B
<missing> 2 weeks ago /bin/sh -c #(nop) COPY file:c432ff61c4993ecd… 138B
<missing> 2 weeks ago /bin/sh -c #(nop) STOPSIGNAL SIGWINCH 0B
<missing> 2 weeks ago /bin/sh -c set -eux; savedAptMark="$(apt-m… 82.4MB
<missing> 2 weeks ago /bin/sh -c #(nop) ENV HTTPD_PATCHES=rewrite… 0B
<missing> 2 weeks ago /bin/sh -c #(nop) ENV HTTPD_SHA256=dbccb84a… 0B
<missing> 2 weeks ago /bin/sh -c #(nop) ENV HTTPD_VERSION=2.4.57 0B
<missing> 2 weeks ago /bin/sh -c set -eux; apt-get update; apt-g… 11MB
<missing> 2 weeks ago /bin/sh -c #(nop) WORKDIR /usr/local/apache2 0B
<missing> 2 weeks ago /bin/sh -c mkdir -p "$HTTPD_PREFIX" && chow… 0B
<missing> 2 weeks ago /bin/sh -c #(nop) ENV PATH=/usr/local/apach… 0B
<missing> 2 weeks ago /bin/sh -c #(nop) ENV HTTPD_PREFIX=/usr/loc… 0B
<missing> 2 weeks ago /bin/sh -c #(nop) CMD ["bash"] 0B
<missing> 2 weeks ago /bin/sh -c #(nop) ADD file:ba1250b6ecd5dd09d… 74.8MB
イメージIDでも確認することが可能です。
コマンド
docker history <イメージID>
実行例
$ docker history 53ac4687315d
IMAGE CREATED CREATED BY SIZE COMMENT
53ac4687315d 8 days ago EXPOSE map[80/tcp:{}] 0B buildkit.dockerfile.v0
<missing> 8 days ago COPY index.html /usr/local/apache2/htdocs/ #… 70B buildkit.dockerfile.v0
<missing> 2 weeks ago /bin/sh -c #(nop) CMD ["httpd-foreground"] 0B
<missing> 2 weeks ago /bin/sh -c #(nop) EXPOSE 80 0B
<missing> 2 weeks ago /bin/sh -c #(nop) COPY file:c432ff61c4993ecd… 138B
<missing> 2 weeks ago /bin/sh -c #(nop) STOPSIGNAL SIGWINCH 0B
<missing> 2 weeks ago /bin/sh -c set -eux; savedAptMark="$(apt-m… 82.4MB
<missing> 2 weeks ago /bin/sh -c #(nop) ENV HTTPD_PATCHES=rewrite… 0B
<missing> 2 weeks ago /bin/sh -c #(nop) ENV HTTPD_SHA256=dbccb84a… 0B
<missing> 2 weeks ago /bin/sh -c #(nop) ENV HTTPD_VERSION=2.4.57 0B
<missing> 2 weeks ago /bin/sh -c set -eux; apt-get update; apt-g… 11MB
<missing> 2 weeks ago /bin/sh -c #(nop) WORKDIR /usr/local/apache2 0B
<missing> 2 weeks ago /bin/sh -c mkdir -p "$HTTPD_PREFIX" && chow… 0B
<missing> 2 weeks ago /bin/sh -c #(nop) ENV PATH=/usr/local/apach… 0B
<missing> 2 weeks ago /bin/sh -c #(nop) ENV HTTPD_PREFIX=/usr/loc… 0B
<missing> 2 weeks ago /bin/sh -c #(nop) CMD ["bash"] 0B
<missing> 2 weeks ago /bin/sh -c #(nop) ADD file:ba1250b6ecd5dd09d… 74.8MB
参考
Discussion