镜像构建历史
# 2026-10-30 03:49:29 0.00B 设置默认要执行的命令
CMD ["help"]
# 2026-10-30 03:49:29 0.00B 声明容器运行时监听的端口
EXPOSE map[6123/tcp:{} 8081/tcp:{}]
# 2026-10-30 03:49:29 0.00B 配置容器启动时运行的命令
ENTRYPOINT ["/docker-entrypoint.sh"]
# 2026-10-30 03:49:29 5.82KB 复制新文件或目录到容器中
COPY docker-entrypoint.sh / # buildkit
# 2026-10-30 03:49:29 0.00B 指定运行容器时使用的用户
USER flink
# 2026-10-30 03:49:29 614.08MB 执行命令并创建新的镜像层
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-10-30 03:48:48 0.00B 设置工作目录为/opt/flink
WORKDIR /opt/flink
# 2026-10-30 03:48:48 4.73KB 执行命令并创建新的镜像层
RUN /bin/sh -c groupadd --system --gid=9999 flink && useradd --system --home-dir $FLINK_HOME --uid=9999 --gid=flink flink # buildkit
# 2026-10-30 03:48:48 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-10-30 03:48:48 0.00B 设置环境变量 FLINK_HOME
ENV FLINK_HOME=/opt/flink
# 2026-10-30 03:48:48 0.00B 设置环境变量 FLINK_TGZ_URL FLINK_ASC_URL GPG_KEY CHECK_GPG
ENV FLINK_TGZ_URL=https://dlcdn.apache.org/flink/flink-2.2.1/flink-2.2.1-bin-scala_2.12.tgz FLINK_ASC_URL=https://downloads.apache.org/flink/flink-2.2.1/flink-2.2.1-bin-scala_2.12.tgz.asc GPG_KEY=F7529FAE24811A5C0DF3CA741596BBF0726835D8 CHECK_GPG=true
# 2026-10-30 03:48:48 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-10-30 03:13:46 0.00B 配置容器启动时运行的命令
ENTRYPOINT ["/__cacert_entrypoint.sh"]
# 2026-10-30 03:13:46 5.98KB 复制新文件或目录到容器中
COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh # buildkit
# 2026-10-30 03:13:46 0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; echo "Verifying install ..."; echo "java --version"; java --version; echo "Complete." # buildkit
# 2026-10-30 03:13:46 165.63MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in amd64) ESUM='a535a1df9c6284d9618872984e026ae0352d1f7e9e0605425c0e6114f47351dd'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.13%2B9/OpenJDK21U-jre_x64_linux_hotspot_21.0.13_9.tar.gz'; ;; arm64) ESUM='b1734db7ade49c3f6acc6ae06233b8c2dd90e3e2f00f67000ae1c972aaa64d8c'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.13%2B9/OpenJDK21U-jre_aarch64_linux_hotspot_21.0.13_9.tar.gz'; ;; ppc64el) ESUM='4994d5bf70a58b683c86158dc1c19c973551cc225956893f91008c6180469c6c'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.13%2B9/OpenJDK21U-jre_ppc64le_linux_hotspot_21.0.13_9.tar.gz'; ;; riscv64) ESUM='40c66736338abeb8b633d50036e5f83e3a3f55654723f31589fa09c081eec118'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.13%2B9/OpenJDK21U-jre_riscv64_linux_hotspot_21.0.13_9.tar.gz'; ;; s390x) ESUM='f4722f400e7fce6e6d80c86d5ef68d0007694670a0a2b0bb569ad0e83dd5f996'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.13%2B9/OpenJDK21U-jre_s390x_linux_hotspot_21.0.13_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; find "$JAVA_HOME/lib" -name '*.so' -exec dirname '{}' ';' | sort -u > /etc/ld.so.conf.d/docker-openjdk.conf; ldconfig; java -Xshare:dump; # buildkit
# 2026-10-30 03:13:43 0.00B 设置环境变量 JAVA_VERSION
ENV JAVA_VERSION=jdk-21.0.13+9
# 2026-10-30 03:13:43 44.11MB 执行命令并创建新的镜像层
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-10-30 03:13:43 0.00B 设置环境变量 LANG LANGUAGE LC_ALL
ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8
# 2026-10-30 03:13:43 0.00B 设置环境变量 PATH
ENV PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# 2026-10-30 03:13:43 0.00B 设置环境变量 JAVA_HOME
ENV JAVA_HOME=/opt/java/openjdk
# 2026-10-25 22:17:47 0.00B
/bin/sh -c #(nop) CMD ["/bin/bash"]
# 2026-10-25 22:17:47 78.18MB
/bin/sh -c #(nop) ADD file:eed88e94d6aa7c9da62836e137f889e03988c1a6b237b0cedb6ca666dfaa98ea in /
# 2026-10-25 22:17:45 0.00B
/bin/sh -c #(nop) LABEL org.opencontainers.image.version=24.04
# 2026-10-25 22:17:45 0.00B
/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH
# 2026-10-25 22:17:45 0.00B
/bin/sh -c #(nop) ARG RELEASE
镜像信息
{
"Id": "sha256:766a73bdb6e7598dde8f78d8e65471f87d930737e7e8daf75ea24794f5bccfc1",
"RepoTags": [
"flink:2.2.1-scala_2.12-java21",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/flink:2.2.1-scala_2.12-java21"
],
"RepoDigests": [
"flink@sha256:98c3bcfe7416a7810cea9ec894bea5b943237295f7d2b88cac8144df6cd4b544",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/flink@sha256:1cd64e8e0ee68c79688319f9f0107a88b3f6ebf7f478db4aded47a4aba542e92"
],
"Parent": "",
"Comment": "buildkit.dockerfile.v0",
"Created": "2026-10-29T19:49:29.633451194Z",
"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.13+9",
"FLINK_TGZ_URL=https://dlcdn.apache.org/flink/flink-2.2.1/flink-2.2.1-bin-scala_2.12.tgz",
"FLINK_ASC_URL=https://downloads.apache.org/flink/flink-2.2.1/flink-2.2.1-bin-scala_2.12.tgz.asc",
"GPG_KEY=F7529FAE24811A5C0DF3CA741596BBF0726835D8",
"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": 906693683,
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/e4e97be36cf03714225cda587522baed911c86228df6c8978cdd8baf066e1d43/diff:/var/lib/docker/overlay2/1a3b56f5c62ee8c6cb3c40d3f4412e943f68663cd17cc567414868ebcf459714/diff:/var/lib/docker/overlay2/bf801364a1e4e91d304f1f87618e840351dd86884096c31232c49f7e5e314601/diff:/var/lib/docker/overlay2/879095c778ce743e617dd9cf719eceb438218673c2b3d9ac0ac7abfbc83f0a6d/diff:/var/lib/docker/overlay2/048b1340eb93cf708de56fbb81c2ab18e7e11154ca630eba132f8b21e363745e/diff:/var/lib/docker/overlay2/fe12283bbb8ef6e08d1cb876947efefb7c4f1adf2159a19b544291f8fbb432f4/diff:/var/lib/docker/overlay2/9a8d0b9640d52eb88175b4469391a1b36c4c52e30c56da869a3b28ab9f4861d5/diff:/var/lib/docker/overlay2/a66d3b0b06158331ed1f69af2ba9dab1c76e5da868ae781036174e797b5028e9/diff:/var/lib/docker/overlay2/ce99c8630b9b9d3831cccc7886dc43938bc83aa720e346a9f482ab9b2aaa746a/diff",
"MergedDir": "/var/lib/docker/overlay2/c760f2da212a7aeb5f091f2cfa286c5eb87398947ffb51021d54bcbbb1a5954f/merged",
"UpperDir": "/var/lib/docker/overlay2/c760f2da212a7aeb5f091f2cfa286c5eb87398947ffb51021d54bcbbb1a5954f/diff",
"WorkDir": "/var/lib/docker/overlay2/c760f2da212a7aeb5f091f2cfa286c5eb87398947ffb51021d54bcbbb1a5954f/work"
},
"Name": "overlay2"
},
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:bec87777bc2fb2edcdf9af11df1531469e7df911309c1413082b18fcb8610278",
"sha256:67822e3abc854af47db214f16667073b65931dc539b604b8dda6996b4084ee4a",
"sha256:d390ebe6119202102eaa37b1ae01308d34f2876df4fb56d94d818ca0b6f2c1ff",
"sha256:39598f2f194236b212de89f54438744681527522b3192a17a657707c4b1f16ff",
"sha256:797cce5c7d95a4b4dc04791ea1eb8f5a98a1efc2cadf1e23fc0f9940281a5c48",
"sha256:38052fd0b448331ee907cdbcef2a05ad878c28d555ee8b25049bc515aff8ccda",
"sha256:a8425ad378c2f2c2277fb5174737a3706b700109930f775da8d2c876ea7819b7",
"sha256:644d9e867ea238793f365dcdbec76829aad7a0c30d90252dfa924ad5139799f3",
"sha256:3fcc9f7ab142fc362ca13d8aa1ab0aa38a362bc75de38948800f60eb50441d1c",
"sha256:82eef802aca838292311697041efc710b1b22ddfa3be65a8b9e96f91f7e9e545"
]
},
"Metadata": {
"LastTagTime": "2026-11-06T15:04:24.77844363+08:00"
}
}