镜像构建历史
# 2026-06-23 23:04:58 0.00B 设置默认要执行的命令
CMD ["help"]
# 2026-06-23 23:04:58 0.00B 声明容器运行时监听的端口
EXPOSE [6123/tcp 8081/tcp]
# 2026-06-23 23:04:58 0.00B 配置容器启动时运行的命令
ENTRYPOINT ["/docker-entrypoint.sh"]
# 2026-06-23 23:04:58 5.82KB 复制新文件或目录到容器中
COPY docker-entrypoint.sh / # buildkit
# 2026-06-23 23:04:58 0.00B 指定运行容器时使用的用户
USER flink
# 2026-06-23 23:04:58 653.93MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -ex; wget -nv -O flink.tgz "$FLINK_TGZ_URL"; if [ "$CHECK_GPG" = "true" ]; then wget -nv -O flink.tgz.asc "$FLINK_ASC_URL"; export GNUPGHOME="$(mktemp -d)"; for server in hkps://keys.openpgp.org $(shuf -e keyserver.ubuntu.com hkp://keyserver.ubuntu.com:80 pgp.mit.edu) ; do gpg --batch --keyserver "$server" --recv-keys "$GPG_KEY" && break || : ; done && gpg --batch --verify flink.tgz.asc flink.tgz; gpgconf --kill all; rm -rf "$GNUPGHOME" flink.tgz.asc; fi; tar -xf flink.tgz --strip-components=1; rm flink.tgz; chown -R flink:flink .; CONF_FILE="${FLINK_HOME}/conf/config.yaml"; /bin/bash "$FLINK_HOME/bin/config-parser-utils.sh" "${FLINK_HOME}/conf" "${FLINK_HOME}/bin" "${FLINK_HOME}/lib" "-repKV" "rest.address,localhost,0.0.0.0" "-repKV" "rest.bind-address,localhost,0.0.0.0" "-repKV" "jobmanager.bind-host,localhost,0.0.0.0" "-repKV" "taskmanager.bind-host,localhost,0.0.0.0" "-rmKV" "taskmanager.host=localhost"; # buildkit
# 2026-06-23 23:04:26 0.00B 设置工作目录为/opt/flink
WORKDIR /opt/flink
# 2026-06-23 23:04:26 4.73KB 执行命令并创建新的镜像层
RUN /bin/sh -c groupadd --system --gid=9999 flink && useradd --system --home-dir $FLINK_HOME --uid=9999 --gid=flink flink # buildkit
# 2026-06-23 23:04:26 0.00B 设置环境变量 PATH
ENV PATH=/opt/flink/bin:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# 2026-06-23 23:04:26 0.00B 设置环境变量 FLINK_HOME
ENV FLINK_HOME=/opt/flink
# 2026-06-23 23:04:26 0.00B 设置环境变量 FLINK_TGZ_URL FLINK_ASC_URL GPG_KEY CHECK_GPG
ENV FLINK_TGZ_URL=https://dlcdn.apache.org/flink/flink-2.3.0/flink-2.3.0-bin-scala_2.12.tgz FLINK_ASC_URL=https://downloads.apache.org/flink/flink-2.3.0/flink-2.3.0-bin-scala_2.12.tgz.asc GPG_KEY=E11F792053638C56C98ACFADB5B638DCA5F94E4A CHECK_GPG=true
# 2026-06-23 23:04:26 4.67MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -ex; apt-get update; apt-get -y install gpg libsnappy1v5 gettext-base libjemalloc-dev; rm -rf /var/lib/apt/lists/* # buildkit
# 2026-06-02 16:14:48 0.00B 配置容器启动时运行的命令
ENTRYPOINT ["/__cacert_entrypoint.sh"]
# 2026-06-02 16:14:48 5.31KB 复制新文件或目录到容器中
COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh # buildkit
# 2026-06-02 16:14:48 0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; echo "Verifying install ..."; echo "java --version"; java --version; echo "Complete." # buildkit
# 2026-06-02 16:14:48 165.34MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in amd64) ESUM='e5038aae3ca9ff670bc696496b0728dbd23d280026bad30291cb919221ecfdcb'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.11%2B10/OpenJDK21U-jre_x64_linux_hotspot_21.0.11_10.tar.gz'; ;; arm64) ESUM='fa23d9d9945053e67bcc7638410eabf1e17a7672c7c95a24f70cd08b8407d36e'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.11%2B10/OpenJDK21U-jre_aarch64_linux_hotspot_21.0.11_10.tar.gz'; ;; ppc64el) ESUM='fefb53c4bd687e7a91a9a9809ec80e0862e829cd20513839ad1a9988ddc89482'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.11%2B10/OpenJDK21U-jre_ppc64le_linux_hotspot_21.0.11_10.tar.gz'; ;; riscv64) ESUM='f3d8843c5a1b77ded3353e0df85d803d84b9faa5ece20673564e7c47fc4591d9'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.11%2B10/OpenJDK21U-jre_riscv64_linux_hotspot_21.0.11_10.tar.gz'; ;; s390x) ESUM='45736e9e14d52619133900a077b4f72d1ebee0fd0bb053da0bca9dce9fc4d916'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.11%2B10/OpenJDK21U-jre_s390x_linux_hotspot_21.0.11_10.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; find "$JAVA_HOME/lib" -name '*.so' -exec dirname '{}' ';' | sort -u > /etc/ld.so.conf.d/docker-openjdk.conf; ldconfig; java -Xshare:dump; # buildkit
# 2026-06-02 16:14:19 0.00B 设置环境变量 JAVA_VERSION
ENV JAVA_VERSION=jdk-21.0.11+10
# 2026-06-02 16:14:19 44.16MB 执行命令并创建新的镜像层
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 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
# 2026-06-02 16:14:19 0.00B 设置环境变量 LANG LANGUAGE LC_ALL
ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8
# 2026-06-02 16:14:19 0.00B 设置环境变量 PATH
ENV PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# 2026-06-02 16:14:19 0.00B 设置环境变量 JAVA_HOME
ENV JAVA_HOME=/opt/java/openjdk
# 2026-05-20 09:37:22 0.00B
/bin/sh -c #(nop) CMD ["/bin/bash"]
# 2026-05-20 09:37:21 78.14MB
/bin/sh -c #(nop) ADD file:46ac5b8ee4c64ad9ebe840abd5619f571a617ac19483764d47d0eeba7907934f in /
# 2026-05-20 09:37:19 0.00B
/bin/sh -c #(nop) LABEL org.opencontainers.image.version=24.04
# 2026-05-20 09:37:19 0.00B
/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH
# 2026-05-20 09:37:19 0.00B
/bin/sh -c #(nop) ARG RELEASE
镜像信息
{
"Id": "sha256:09dc1cbbc6a06242f01326390d846c0cabc3191fb7ff22b2be4cbc1681ea145e",
"RepoTags": [
"apache/flink:2.3.0-scala_2.12-java21",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/apache/flink:2.3.0-scala_2.12-java21"
],
"RepoDigests": [
"apache/flink@sha256:0bb8d196d2c517d42a75a44429e1f69049f1b26a36560933cb1579670ae41c4e",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/apache/flink@sha256:4835790e6cb598885b47043259f9d4779e9bf13a5f64853a8ce5427d64071038"
],
"Parent": "",
"Comment": "buildkit.dockerfile.v0",
"Created": "2026-06-23T15:04:58.123209299Z",
"Container": "",
"ContainerConfig": null,
"DockerVersion": "",
"Author": "",
"Config": {
"Hostname": "",
"Domainname": "",
"User": "flink",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"ExposedPorts": {
"6123/tcp": {},
"8081/tcp": {}
},
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"PATH=/opt/flink/bin:/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.11+10",
"FLINK_TGZ_URL=https://dlcdn.apache.org/flink/flink-2.3.0/flink-2.3.0-bin-scala_2.12.tgz",
"FLINK_ASC_URL=https://downloads.apache.org/flink/flink-2.3.0/flink-2.3.0-bin-scala_2.12.tgz.asc",
"GPG_KEY=E11F792053638C56C98ACFADB5B638DCA5F94E4A",
"CHECK_GPG=true",
"FLINK_HOME=/opt/flink"
],
"Cmd": [
"help"
],
"ArgsEscaped": true,
"Image": "",
"Volumes": null,
"WorkingDir": "/opt/flink",
"Entrypoint": [
"/docker-entrypoint.sh"
],
"OnBuild": null,
"Labels": {
"org.opencontainers.image.version": "24.04"
}
},
"Architecture": "amd64",
"Os": "linux",
"Size": 946255356,
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/70e4a7a40c3bc931cb8fae1dc6f39871120522128a34c2f93c7499dc5c08c88f/diff:/var/lib/docker/overlay2/41bad2937898c58af14448d65e4854ae00adbf077591b8b1a0a5bea75820c989/diff:/var/lib/docker/overlay2/bf28ecda9ea7ad5e917639ab0a134e65a098d3c4dbf8f865fd32341731b58786/diff:/var/lib/docker/overlay2/4115dbed6d2f8b8410df4da1554ef4a2063f0df253d2d90bd742a943411a4150/diff:/var/lib/docker/overlay2/9aa1fffa59ab3803f70b07dfa222bcaf4543fc41f9958bb794eb979483c1ca23/diff:/var/lib/docker/overlay2/289020eabbfbc9a864fda0595c81f57456985661b08b71c5d58b499d936fb877/diff:/var/lib/docker/overlay2/95e708d5ca3931cefe1d49280d968cc199b3af8981567e74f2ab47e6df79443c/diff:/var/lib/docker/overlay2/5c2cecb0572ffc01d901da87db3952859e1b5dc04639bb348025a64692fed466/diff:/var/lib/docker/overlay2/45ba1024654466f28de57b3afe67dfbb3af11da7cfc6b87249f1552f66136550/diff",
"MergedDir": "/var/lib/docker/overlay2/841c2aae335ee15bf1d4419c19c3406a57f9a3b4137c8fd87a095854204d20f9/merged",
"UpperDir": "/var/lib/docker/overlay2/841c2aae335ee15bf1d4419c19c3406a57f9a3b4137c8fd87a095854204d20f9/diff",
"WorkDir": "/var/lib/docker/overlay2/841c2aae335ee15bf1d4419c19c3406a57f9a3b4137c8fd87a095854204d20f9/work"
},
"Name": "overlay2"
},
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:98effb2dfe85d4c431f97d90482075f19e5fc3a57c2dd423d8bdfd4813620043",
"sha256:7048940f4be5cece3f0d6bf980fd671e1815fddbd674837dddbbe21ee339a612",
"sha256:e4f7fb7f533ce78156a2e108f8663d948707679cd5b362eab75701f9abcd034c",
"sha256:24992f2c2554a177c535970a166a84f3684d500862f81a6dc3e95e33495796eb",
"sha256:ebe546da307e2db67b2ce3eb104388062cd8a76781535c34dc57933c3bbffc47",
"sha256:2e3ffda6a8746b7d6b6908a2eb1764ce180bcb6eb80de0ce829cbfd93798ca97",
"sha256:b893c576d6621c5724d13a3bc455b73531e689e0f4d6ddeb71af2429beeca9d3",
"sha256:6ad6acf4eeb42d8dfc207d41f06a49bf006972f506cb095f8911b34b461926c0",
"sha256:933db64f330284a38ccdbc0bb821c9321709364be5af3be4b4c30e290cd09d7d",
"sha256:41cd113fb1a7e9ff87a87b316612f891b62d95dca24b55fe3046c9a9fd4e63b8"
]
},
"Metadata": {
"LastTagTime": "2026-09-15T14:05:44.230136445+08:00"
}
}