镜像构建历史
# 2026-07-02 13:20:26 0.00B 设置默认要执行的命令
CMD ["help"]
# 2026-07-02 13:20:26 0.00B 声明容器运行时监听的端口
EXPOSE map[6123/tcp:{} 8081/tcp:{}]
# 2026-07-02 13:20:26 0.00B 配置容器启动时运行的命令
ENTRYPOINT ["/docker-entrypoint.sh"]
# 2026-07-02 13:20:26 5.82KB 复制新文件或目录到容器中
COPY docker-entrypoint.sh / # buildkit
# 2026-07-02 13:20:26 0.00B 指定运行容器时使用的用户
USER flink
# 2026-07-02 13:20:26 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-07-02 13:18:13 0.00B 设置工作目录为/opt/flink
WORKDIR /opt/flink
# 2026-07-02 13:18:13 4.73KB 执行命令并创建新的镜像层
RUN /bin/sh -c groupadd --system --gid=9999 flink && useradd --system --home-dir $FLINK_HOME --uid=9999 --gid=flink flink # buildkit
# 2026-07-02 13:18:13 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-07-02 13:18:13 0.00B 设置环境变量 FLINK_HOME
ENV FLINK_HOME=/opt/flink
# 2026-07-02 13:18:13 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-07-02 13:18:12 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-07-02 10:21:17 0.00B 配置容器启动时运行的命令
ENTRYPOINT ["/__cacert_entrypoint.sh"]
# 2026-07-02 10:21:17 5.31KB 复制新文件或目录到容器中
COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh # buildkit
# 2026-07-02 10:21:17 0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; echo "Verifying install ..."; echo "java --version"; java --version; echo "Complete." # buildkit
# 2026-07-02 10:21:17 141.70MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in amd64) ESUM='adb5a2364baa51de1ef91bb9911f5a61d24b045fe1d6647cb8050272a3a8ee75'; BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.19%2B10/OpenJDK17U-jre_x64_linux_hotspot_17.0.19_10.tar.gz'; ;; arm64) ESUM='aae834297a87736869745be7c1fca3207ea9167c5824f41c88b0ebb2e3ccb9b1'; BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.19%2B10/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.19_10.tar.gz'; ;; armhf) ESUM='018d1f5c11b2f1a2175c282a0fe8a17d9166da84b70ec1c60c1fa628a261d1eb'; BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.19%2B10/OpenJDK17U-jre_arm_linux_hotspot_17.0.19_10.tar.gz'; ;; ppc64el) ESUM='1b028a08d96054ef29a3b6c424537d9644e0ec5fb5742a64d967dd56d5571b6b'; BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.19%2B10/OpenJDK17U-jre_ppc64le_linux_hotspot_17.0.19_10.tar.gz'; ;; riscv64) ESUM='08c8c193fc2e8e6eb4450d3ddcefa78889eef338b2bbc0b30e5a6d586fc6d646'; BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.19%2B10/OpenJDK17U-jre_riscv64_linux_hotspot_17.0.19_10.tar.gz'; ;; s390x) ESUM='674547d46dad6909fdcdafe5a691c131b048a8d226ccd7d0a4e96f2b208d772a'; BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.19%2B10/OpenJDK17U-jre_s390x_linux_hotspot_17.0.19_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-07-02 10:21:14 0.00B 设置环境变量 JAVA_VERSION
ENV JAVA_VERSION=jdk-17.0.19+10
# 2026-07-02 10:21:14 44.08MB 执行命令并创建新的镜像层
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-07-02 10:21:14 0.00B 设置环境变量 LANG LANGUAGE LC_ALL
ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8
# 2026-07-02 10:21:14 0.00B 设置环境变量 PATH
ENV PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# 2026-07-02 10:21:14 0.00B 设置环境变量 JAVA_HOME
ENV JAVA_HOME=/opt/java/openjdk
# 2026-06-23 05:24:21 0.00B
/bin/sh -c #(nop) CMD ["/bin/bash"]
# 2026-06-23 05:24:20 78.14MB
/bin/sh -c #(nop) ADD file:8c609c85109d07bf47cf268a175b3be8bbe34fc0c41d15d99b090d099f4dc837 in /
# 2026-06-23 05:24:18 0.00B
/bin/sh -c #(nop) LABEL org.opencontainers.image.version=24.04
# 2026-06-23 05:24:18 0.00B
/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH
# 2026-06-23 05:24:17 0.00B
/bin/sh -c #(nop) ARG RELEASE
镜像信息
{
"Id": "sha256:2cbad0b341d8bea46cfd27a4152692d701ecce80bf4df8538791f7f6d3773d95",
"RepoTags": [
"flink:2.3.0",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/library/flink:2.3.0"
],
"RepoDigests": [
"flink@sha256:12a034b71a4d6d55227d14fe0ba69b0612c065a1dfaa756de4858fc56148c99c",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/library/flink@sha256:81d8601a4e798559400461a5e0c79154862dd4ced399980fc3ad9b4dfc3917de"
],
"Parent": "",
"Comment": "buildkit.dockerfile.v0",
"Created": "2026-07-02T05:20:26.103886649Z",
"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-17.0.19+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"
],
"Image": "",
"Volumes": null,
"WorkingDir": "/opt/flink",
"Entrypoint": [
"/docker-entrypoint.sh"
],
"OnBuild": null,
"Labels": {
"org.opencontainers.image.version": "24.04"
}
},
"Architecture": "amd64",
"Os": "linux",
"Size": 922539332,
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/eabae4a6e96985721c8d7942810b21e4dcd1eefb55a1387e3615bfb07317aa39/diff:/var/lib/docker/overlay2/8e6430d12dfba6e81c83a5c506aa1fff1442f58169894efa503720b4fb3a7370/diff:/var/lib/docker/overlay2/c80e5ebb46e030ae39c26edc1b8a42a835c483f905860be31ab7bbf34c7ad48a/diff:/var/lib/docker/overlay2/b2db2e2b02e59d87e826d628954a301276d29d4b0a3501b6a7b90258923ccb3d/diff:/var/lib/docker/overlay2/a57a9fa97da08e19b11ab8bbb54f9dfac9e29ad97932e0f67e70e8c68494dd9a/diff:/var/lib/docker/overlay2/8b8aa5756d71d6ab301900abc3c03f3a2f65ee0b7324f4582412051f3694b25e/diff:/var/lib/docker/overlay2/ce2a507829bcaceb3616c6de4f3b93e109f082bf24a2dca8c6611140afdf8811/diff:/var/lib/docker/overlay2/befe7b709cf51dfb3a3e17987b0277d6453377a7fdd1695fad1b6a0cb7fca66b/diff:/var/lib/docker/overlay2/f48fddcb5b76a2eb2c4ec7a03e83b17d350f4dbba64437fc281e60fc43468d79/diff",
"MergedDir": "/var/lib/docker/overlay2/ef9818a315b6e898e62c402da11d2dbb1a43a1ecadd8f091f202a9104557f216/merged",
"UpperDir": "/var/lib/docker/overlay2/ef9818a315b6e898e62c402da11d2dbb1a43a1ecadd8f091f202a9104557f216/diff",
"WorkDir": "/var/lib/docker/overlay2/ef9818a315b6e898e62c402da11d2dbb1a43a1ecadd8f091f202a9104557f216/work"
},
"Name": "overlay2"
},
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:f103cd120fdd6cbc7f3d0e1d5bfb3e16290c32ead7b822d15c34460ecdf64b29",
"sha256:a710a1802eec6583de2aafc31979656bc5060b0dd1299b39f86727120e176405",
"sha256:c8c6100f17257fc573e5e4be452215bb059c16eddb305a3b78be8ebcdfb77ef2",
"sha256:49a07ed6edfc4c86764523f1e3d1ad2ef2c8c66cd99b0a2b3618feb2b9e58dd4",
"sha256:be6674b967a86e9ffa994312739523b422722cbbc82b9e109c9bd4dc027bdad8",
"sha256:55589c4eb038b9a3c46811f092336a4224901e57f29271a5a450b2f166a20cea",
"sha256:aeb9f079c8291452f374ce6eddc6f32cf3b19e57c5001e7478a2e11c60e4c938",
"sha256:90519cbbc1b23fe5e4b6adcdaa83fd16cfb251c5af5154b520902b21034fdeeb",
"sha256:bc815ca9d1f5de2e8bdb58eda46ba7ff1f76797dc8953d134a91d9b7883c116e",
"sha256:1d148c4ddc60a7a948362c775f51e9517faef0e7d7308f89cb3395624b46b85f"
]
},
"Metadata": {
"LastTagTime": "2026-07-17T10:57:21.381231582+08:00"
}
}