镜像构建历史
# 2025-11-14 04:44:03 0.00B 配置容器启动时运行的命令
ENTRYPOINT ["/entrypoint.sh"]
# 2025-11-14 04:44:03 0.00B 创建挂载点用于持久化数据或共享数据
VOLUME [/var/gerrit/git /var/gerrit/index /var/gerrit/cache /var/gerrit/db /var/gerrit/etc]
# 2025-11-14 04:44:03 0.00B 声明容器运行时监听的端口
EXPOSE [29418/tcp 8080/tcp]
# 2025-11-14 04:44:03 0.00B 设置环境变量 HTTPD_LISTEN_URL
ENV HTTPD_LISTEN_URL=
# 2025-11-14 04:44:03 0.00B 设置环境变量 CANONICAL_WEB_URL
ENV CANONICAL_WEB_URL=
# 2025-11-14 04:44:03 0.00B 指定运行容器时使用的用户
USER gerrit
# 2025-11-14 04:44:03 192.82MB 执行命令并创建新的镜像层
RUN /bin/sh -c update-alternatives --install /usr/bin/java java $(which java) 2222 && apt-get -y upgrade && apt-get -y install gerrit=3.13.1-1 && apt-mark hold gerrit && /entrypoint.sh init && bash -c 'rm -f /var/gerrit/etc/{ssh,secure}* && rm -Rf /var/gerrit/{static,index,logs,data,index,cache,git,db,tmp}/*' && chown -R gerrit:gerrit /var/gerrit # buildkit
# 2025-11-14 04:43:25 1.10KB 复制文件或目录到容器中
ADD entrypoint.sh / # buildkit
# 2025-11-14 04:43:25 2.98MB 执行命令并创建新的镜像层
RUN /bin/sh -c apt-get -y install sudo # buildkit
# 2025-11-14 04:43:21 3.56KB 执行命令并创建新的镜像层
RUN /bin/sh -c apt-key update # buildkit
# 2025-11-14 04:43:21 101.35KB 执行命令并创建新的镜像层
RUN /bin/sh -c apt-get update # buildkit
# 2025-11-14 04:43:18 1.18KB 执行命令并创建新的镜像层
RUN /bin/sh -c apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 55787ed781304950 # buildkit
# 2025-11-14 04:43:17 62.00B 执行命令并创建新的镜像层
RUN /bin/sh -c echo "deb mirror://mirrorlist.gerritforge.com/bionic gerrit contrib" > /etc/apt/sources.list.d/GerritForge.list # buildkit
# 2025-11-14 04:43:16 56.83MB 执行命令并创建新的镜像层
RUN /bin/sh -c apt-get update && apt-get -y install gnupg2 # buildkit
# 2025-11-14 04:43:16 0.00B 添加元数据标签
LABEL org.opencontainers.image.authors=luca.milanesio@gmail.com
# 2025-08-01 19:04:34 0.00B 设置默认要执行的命令
CMD ["jshell"]
# 2025-08-01 19:04:34 0.00B 配置容器启动时运行的命令
ENTRYPOINT ["/__cacert_entrypoint.sh"]
# 2025-08-01 19:04:34 5.31KB 复制新文件或目录到容器中
COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh # buildkit
# 2025-08-01 19:04:34 0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; echo "Verifying install ..."; fileEncoding="$(echo 'System.out.println(System.getProperty("file.encoding"))' | jshell -s -)"; [ "$fileEncoding" = 'UTF-8' ]; rm -rf ~/.java; echo "javac --version"; javac --version; echo "java --version"; java --version; echo "Complete." # buildkit
# 2025-08-01 19:04:34 307.00MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in amd64) ESUM='f2dc5418092c43003db8f9005c4a286e1c0104fea96ccdd49e8ebd037cac9219'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.8%2B9/OpenJDK21U-jdk_x64_linux_hotspot_21.0.8_9.tar.gz'; ;; arm64) ESUM='e5c41a1ab0865ea5de9b4529bf8526005f1d4593090845387d14fe450ce39c33'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.8%2B9/OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.8_9.tar.gz'; ;; ppc64el) ESUM='a24e869b8e563fd7b9f7776f6686ca5d737c8d1c3c33c9b72836935709b44a34'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.8%2B9/OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.8_9.tar.gz'; ;; riscv64) ESUM='8171d95189e675e297b5cb96c7ac6247ab4e9f48da82b13f491fc46ef5d97836'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.8%2B9/OpenJDK21U-jdk_riscv64_linux_hotspot_21.0.8_9.tar.gz'; ;; s390x) ESUM='a84e3cbf8bb5f8a313e06b790c7bc388687ba00262e981f5e33432ebd4d34356'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.8%2B9/OpenJDK21U-jdk_s390x_linux_hotspot_21.0.8_9.tar.gz'; ;; *) echo "Unsupported arch: ${ARCH}"; exit 1; ;; esac; wget --progress=dot:giga -O /tmp/openjdk.tar.gz ${BINARY_URL}; wget --progress=dot:giga -O /tmp/openjdk.tar.gz.sig ${BINARY_URL}.sig; export GNUPGHOME="$(mktemp -d)"; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 3B04D753C9050D9A5D343F39843C48A565F8F04B; gpg --batch --verify /tmp/openjdk.tar.gz.sig /tmp/openjdk.tar.gz; rm -rf "${GNUPGHOME}" /tmp/openjdk.tar.gz.sig; echo "${ESUM} */tmp/openjdk.tar.gz" | sha256sum -c -; mkdir -p "$JAVA_HOME"; tar --extract --file /tmp/openjdk.tar.gz --directory "$JAVA_HOME" --strip-components 1 --no-same-owner ; rm -f /tmp/openjdk.tar.gz ${JAVA_HOME}/lib/src.zip; find "$JAVA_HOME/lib" -name '*.so' -exec dirname '{}' ';' | sort -u > /etc/ld.so.conf.d/docker-openjdk.conf; ldconfig; java -Xshare:dump; # buildkit
# 2025-08-01 19:04:34 0.00B 设置环境变量 JAVA_VERSION
ENV JAVA_VERSION=jdk-21.0.8+9
# 2025-08-01 19:04:34 62.83MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; apt-get update; DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends curl wget gnupg fontconfig ca-certificates p11-kit binutils tzdata locales ; echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen; locale-gen en_US.UTF-8; rm -rf /var/lib/apt/lists/* # buildkit
# 2025-08-01 19:04:34 0.00B 设置环境变量 LANG LANGUAGE LC_ALL
ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8
# 2025-08-01 19:04:34 0.00B 设置环境变量 PATH
ENV PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# 2025-08-01 19:04:34 0.00B 设置环境变量 JAVA_HOME
ENV JAVA_HOME=/opt/java/openjdk
# 2025-08-01 19:04:34 0.00B
/bin/sh -c #(nop) CMD ["/bin/bash"]
# 2025-08-01 19:04:34 78.12MB
/bin/sh -c #(nop) ADD file:249778a1782b02a1c2bcf9f292f5778d81442a53c3de1958d712f10baf7e0b60 in /
# 2025-08-01 19:04:34 0.00B
/bin/sh -c #(nop) LABEL org.opencontainers.image.version=24.04
# 2025-08-01 19:04:34 0.00B
/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu
# 2025-08-01 19:04:34 0.00B
/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH
# 2025-08-01 19:04:34 0.00B
/bin/sh -c #(nop) ARG RELEASE
镜像信息
{
"Id": "sha256:3bd05a255f6f4c2619918ca5218d17dffa2956f10b35d1b00a4c1644674f1c68",
"RepoTags": [
"gerritcodereview/gerrit:3.13.1-ubuntu24",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/gerritcodereview/gerrit:3.13.1-ubuntu24"
],
"RepoDigests": [
"gerritcodereview/gerrit@sha256:f6b9c9b0ed32f700eee7e5c39902fbb0dca7f6c6ea74c26cf4f6f49d42285f89",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/gerritcodereview/gerrit@sha256:74cd516c3b30f2f13ed94f8fd0ff010fa7a9ce69924f8bcf4981297c38ced9df"
],
"Parent": "",
"Comment": "buildkit.dockerfile.v0",
"Created": "2025-11-13T20:44:03.500031808Z",
"Container": "",
"ContainerConfig": null,
"DockerVersion": "",
"Author": "",
"Config": {
"Hostname": "",
"Domainname": "",
"User": "gerrit",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"ExposedPorts": {
"29418/tcp": {},
"8080/tcp": {}
},
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"JAVA_HOME=/opt/java/openjdk",
"LANG=en_US.UTF-8",
"LANGUAGE=en_US:en",
"LC_ALL=en_US.UTF-8",
"JAVA_VERSION=jdk-21.0.8+9",
"CANONICAL_WEB_URL=",
"HTTPD_LISTEN_URL="
],
"Cmd": null,
"Image": "",
"Volumes": {
"/var/gerrit/cache": {},
"/var/gerrit/db": {},
"/var/gerrit/etc": {},
"/var/gerrit/git": {},
"/var/gerrit/index": {}
},
"WorkingDir": "",
"Entrypoint": [
"/entrypoint.sh"
],
"OnBuild": null,
"Labels": {
"org.opencontainers.image.authors": "luca.milanesio@gmail.com",
"org.opencontainers.image.ref.name": "ubuntu",
"org.opencontainers.image.version": "24.04"
}
},
"Architecture": "amd64",
"Os": "linux",
"Size": 700682775,
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/1799544d69d734fdf4ccfca8cbd10de7b9a41df34a6d445493d0926f1a049bb0/diff:/var/lib/docker/overlay2/164e81c3b01400ec69a904f3315b6cfdeb12620e2a4d9f860a9d5e06e87e5941/diff:/var/lib/docker/overlay2/d0e482691f220ccf0f1f60f453d57042f14e818ba2c566861ba72553913e06da/diff:/var/lib/docker/overlay2/8c48570088c2da106e28d29d3e7975597685c49e04427b48bcdc1b9425863484/diff:/var/lib/docker/overlay2/e07f50236d98b59a3d192a6b99a71bc049a9c39b6ce381c28139d9604ae4e631/diff:/var/lib/docker/overlay2/3213d2d2f7c2ce3c08bd131335edc2fa25f6388ccff12d7fec6e00b0692564b4/diff:/var/lib/docker/overlay2/9bb3e52375518e1252f897bdcc58d6421d5b652f1b678f36f8daeaaa0d140a43/diff:/var/lib/docker/overlay2/092d04deb787e08910a70667931603f3e505b0876f8fa25a7ffeb4fabb6328df/diff:/var/lib/docker/overlay2/96448935fa25e0db4ecf47491cc1a5b7aaa6d6aad807439bac5e217e0d434250/diff:/var/lib/docker/overlay2/dfb76e18d79b263deedc0c3f6bfaeb28609a2f2ff0e741161e008c35da146f70/diff:/var/lib/docker/overlay2/6443dff0e818dd022b73f913747a9320f53168d269da2b00876375a38b76167f/diff:/var/lib/docker/overlay2/7f48202ddfdf6c0b97c4c404acb4e0a1f17e7080e3e964f8a4763a6287f69bfa/diff",
"MergedDir": "/var/lib/docker/overlay2/3a4878c400e44d8749392ef46aa2ab5935e30641cd736e7214d32c4efbd743d6/merged",
"UpperDir": "/var/lib/docker/overlay2/3a4878c400e44d8749392ef46aa2ab5935e30641cd736e7214d32c4efbd743d6/diff",
"WorkDir": "/var/lib/docker/overlay2/3a4878c400e44d8749392ef46aa2ab5935e30641cd736e7214d32c4efbd743d6/work"
},
"Name": "overlay2"
},
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:073ec47a8c22dcaa4d6e5758799ccefe2f9bde943685830b1bf6fd2395f5eabc",
"sha256:7b503168af1b15d70694d75ac15621ef723eb7833e82879f7806fc1c84097d78",
"sha256:9f35b609972dba8605a4a03302336e056d7f3db234812d406ca8fcadbbe01d86",
"sha256:55a6c07caac245c4d539e718457681d264821893185197eaa5e4ff35f9884ef2",
"sha256:b6b5c6883a4daead8ca3b2fa3e01a5f96288f072e6cdcf28034a37d9df89976c",
"sha256:62a2c3e16a84e035e8eae8729c12579ef482ff682f91ff0c99380ce692570fae",
"sha256:55a506cf5c8ddc07b365c50cc7b301abd11ce9577074b7dcb0ff56ec2adc0269",
"sha256:43c48d0050fb32575dfa855ca1f21c374bb1588e6fecf765934cf7613c7be649",
"sha256:f226b0cf1dbcca48183f7d13ce3c64f44a2684fa3712bfbe9d55e233f315a577",
"sha256:b61bafdba635fb990d5df0fee6ef7e481b710964f788379973cc82190fda60ef",
"sha256:731c79cdec9e3ec6194c403054349e83628df1f2a34cb2d751beb303db61f459",
"sha256:497fe6833c6f53dd90fef56510a6a69e0f6d7418b852ac62c4f59fa275f83af2",
"sha256:47121412cadc5ab17729951d7772542261dc8d6add65b7a6d241261fd911ea20"
]
},
"Metadata": {
"LastTagTime": "2025-12-13T14:53:50.616239208+08:00"
}
}