镜像构建历史
# 2024-08-01 14:57:14 0.00B 设置默认要执行的命令
CMD ["help"]
# 2024-08-01 14:57:14 0.00B 声明容器运行时监听的端口
EXPOSE map[6123/tcp:{} 8081/tcp:{}]
# 2024-08-01 14:57:14 0.00B 配置容器启动时运行的命令
ENTRYPOINT ["/docker-entrypoint.sh"]
# 2024-08-01 14:57:14 5.98KB 复制新文件或目录到容器中
COPY docker-entrypoint.sh / # buildkit
# 2024-08-01 14:57:14 526.78MB 执行命令并创建新的镜像层
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 ha.pool.sks-keyservers.net $(shuf -e hkp://p80.pool.sks-keyservers.net:80 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/flink-conf.yaml"; if [ ! -e "$FLINK_HOME/conf/flink-conf.yaml" ]; then 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"; else sed -i 's/rest.address: localhost/rest.address: 0.0.0.0/g' "$CONF_FILE"; sed -i 's/rest.bind-address: localhost/rest.bind-address: 0.0.0.0/g' "$CONF_FILE"; sed -i 's/jobmanager.bind-host: localhost/jobmanager.bind-host: 0.0.0.0/g' "$CONF_FILE"; sed -i 's/taskmanager.bind-host: localhost/taskmanager.bind-host: 0.0.0.0/g' "$CONF_FILE"; sed -i '/taskmanager.host: localhost/d' "$CONF_FILE"; fi; # buildkit
# 2024-08-01 14:57:14 0.00B 设置工作目录为/opt/flink
WORKDIR /opt/flink
# 2024-08-01 14:57:14 3.28MB 执行命令并创建新的镜像层
RUN /bin/sh -c groupadd --system --gid=9999 flink && useradd --system --home-dir $FLINK_HOME --uid=9999 --gid=flink flink # buildkit
# 2024-08-01 14:57:14 0.00B 设置环境变量 PATH
ENV PATH=/opt/flink/bin:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# 2024-08-01 14:57:14 0.00B 设置环境变量 FLINK_HOME
ENV FLINK_HOME=/opt/flink
# 2024-08-01 14:57:14 0.00B 设置环境变量 FLINK_TGZ_URL FLINK_ASC_URL GPG_KEY CHECK_GPG
ENV FLINK_TGZ_URL=https://dlcdn.apache.org/flink/flink-1.20.0/flink-1.20.0-bin-scala_2.12.tgz FLINK_ASC_URL=https://downloads.apache.org/flink/flink-1.20.0/flink-1.20.0-bin-scala_2.12.tgz.asc GPG_KEY=B2D64016B940A7E0B9B72E0D7D0528B28037D8BC CHECK_GPG=true
# 2024-08-01 14:57:14 2.25MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -ex; wget -nv -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$(dpkg --print-architecture)"; wget -nv -O /usr/local/bin/gosu.asc "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$(dpkg --print-architecture).asc"; export GNUPGHOME="$(mktemp -d)"; for server in ha.pool.sks-keyservers.net $(shuf -e hkp://p80.pool.sks-keyservers.net:80 keyserver.ubuntu.com hkp://keyserver.ubuntu.com:80 pgp.mit.edu) ; do gpg --batch --keyserver "$server" --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4 && break || : ; done && gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu; gpgconf --kill all; rm -rf "$GNUPGHOME" /usr/local/bin/gosu.asc; chmod +x /usr/local/bin/gosu; gosu nobody true # buildkit
# 2024-08-01 14:57:14 0.00B 设置环境变量 GOSU_VERSION
ENV GOSU_VERSION=1.11
# 2024-08-01 14:57:14 3.19MB 执行命令并创建新的镜像层
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
# 2024-08-01 14:57:14 0.00B 配置容器启动时运行的命令
ENTRYPOINT ["/__cacert_entrypoint.sh"]
# 2024-08-01 14:57:14 5.31KB 复制新文件或目录到容器中
COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh # buildkit
# 2024-08-01 14:57:14 0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; echo "Verifying install ..."; echo "java --version"; java --version; echo "Complete." # buildkit
# 2024-08-01 14:57:14 141.42MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in amd64) ESUM='a4b0015872758aac6a5d17139e952a3951ee536ae6d9a99828823a80a71add56'; BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.14%2B7/OpenJDK17U-jre_x64_linux_hotspot_17.0.14_7.tar.gz'; ;; arm64) ESUM='bab3f352fc7144ac1435924f056872d16f4b32c8bcda58b9a77b636eb1c664f4'; BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.14%2B7/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.14_7.tar.gz'; ;; armhf) ESUM='7ac439bce4d5ecddb250b31401b1c1a6da2762f51652eafedd53584a0d9e3130'; BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.14%2B7/OpenJDK17U-jre_arm_linux_hotspot_17.0.14_7.tar.gz'; ;; ppc64el) ESUM='2a730e9d34cce4d588739b626a034ed68c065a2db61048ee7886be48ec9fe460'; BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.14%2B7/OpenJDK17U-jre_ppc64le_linux_hotspot_17.0.14_7.tar.gz'; ;; s390x) ESUM='3887f14f95a14e65a985cfcee6696e01aadee06d3347ab70eb7d6b16ce397238'; BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.14%2B7/OpenJDK17U-jre_s390x_linux_hotspot_17.0.14_7.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
# 2024-08-01 14:57:14 0.00B 设置环境变量 JAVA_VERSION
ENV JAVA_VERSION=jdk-17.0.14+7
# 2024-08-01 14:57:14 42.14MB 执行命令并创建新的镜像层
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
# 2024-08-01 14:57:14 0.00B 设置环境变量 LANG LANGUAGE LC_ALL
ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8
# 2024-08-01 14:57:14 0.00B 设置环境变量 PATH
ENV PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# 2024-08-01 14:57:14 0.00B 设置环境变量 JAVA_HOME
ENV JAVA_HOME=/opt/java/openjdk
# 2024-08-01 14:57:14 0.00B
/bin/sh -c #(nop) CMD ["/bin/bash"]
# 2024-08-01 14:57:14 69.22MB
/bin/sh -c #(nop) ADD file:905ede4ce5ed6db0abca06b5e342a3784cd1f328e2cdc1f59f6d556f6382650d in /
# 2024-08-01 14:57:14 0.00B
/bin/sh -c #(nop) LABEL org.opencontainers.image.version=22.04
# 2024-08-01 14:57:14 0.00B
/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu
# 2024-08-01 14:57:14 0.00B
/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH
# 2024-08-01 14:57:14 0.00B
/bin/sh -c #(nop) ARG RELEASE
镜像信息
{
"Id": "sha256:f06425fa1dff31798cfb6d9b2ee1fc98e44284c2cdf4c69320d763c7372e82ab",
"RepoTags": [
"flink:1.20.0-scala_2.12-java17",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/library/flink:1.20.0-scala_2.12-java17-linuxarm64"
],
"RepoDigests": [
"flink@sha256:b46dcc4c70cde81859ef0daa2210a4c2f7bb3f96eb0fee5c9a1229f95176551e",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/library/flink@sha256:1a89fd5cbc10f60f44626ac55d440fd778e100b10fedef2f3d31e81812bfcbe6"
],
"Parent": "",
"Comment": "buildkit.dockerfile.v0",
"Created": "2024-08-01T06:57:14Z",
"Container": "",
"ContainerConfig": null,
"DockerVersion": "",
"Author": "",
"Config": {
"Hostname": "",
"Domainname": "",
"User": "",
"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.14+7",
"GOSU_VERSION=1.11",
"FLINK_TGZ_URL=https://dlcdn.apache.org/flink/flink-1.20.0/flink-1.20.0-bin-scala_2.12.tgz",
"FLINK_ASC_URL=https://downloads.apache.org/flink/flink-1.20.0/flink-1.20.0-bin-scala_2.12.tgz.asc",
"GPG_KEY=B2D64016B940A7E0B9B72E0D7D0528B28037D8BC",
"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.ref.name": "ubuntu",
"org.opencontainers.image.version": "22.04"
}
},
"Architecture": "arm64",
"Variant": "v8",
"Os": "linux",
"Size": 788295536,
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/2a52d024fbd22aa7c8eab92df5c9d0dd9e5677f63d70980029dc090981c34e88/diff:/var/lib/docker/overlay2/d369b8fcdbcca69dd5cac48dfce337d2f9eef9aafd64798a42398f2fb3613ee8/diff:/var/lib/docker/overlay2/cf36f19b1811acf795edb1e56acd9267c048804dc8ea1b376a639fafa4e696b0/diff:/var/lib/docker/overlay2/f27804630b9b33a1474737c1168fd90fb88de533d78bdc1609bd1559eb587b39/diff:/var/lib/docker/overlay2/a0990bfff268ce42059e94a7f26da4676a2ca20cf82306188f713e2a919f6775/diff:/var/lib/docker/overlay2/d943f8eb3ad18fb61f6c221edae0a917d2de666347cf85f90b12724b4b06bbfc/diff:/var/lib/docker/overlay2/1fa2e60b298694de18684a273a0bd1f96df022e4b74b38989980cb75f7bbf2ea/diff:/var/lib/docker/overlay2/533393f8f9d2ab8dced5358aab3501c1c53064e948098c88f9e2c8de1e12cd73/diff:/var/lib/docker/overlay2/2bd38b881ef2cbe248a146b731992b2bff10f591cf3a1b21a186fc57ca3c1298/diff:/var/lib/docker/overlay2/3f5323951f18b234526c87c15d8bda158d31f5f9918df148ef22333560a79541/diff",
"MergedDir": "/var/lib/docker/overlay2/93b70a9be5244255b16191ef2deb55c10328498061557f1b75be33d860cc0f1d/merged",
"UpperDir": "/var/lib/docker/overlay2/93b70a9be5244255b16191ef2deb55c10328498061557f1b75be33d860cc0f1d/diff",
"WorkDir": "/var/lib/docker/overlay2/93b70a9be5244255b16191ef2deb55c10328498061557f1b75be33d860cc0f1d/work"
},
"Name": "overlay2"
},
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:59b223680ef978509f20faf6bf069866dfc02c422159347face0a7565d698526",
"sha256:1ffc802d0c5dece9db8d3bc4b518fb46a06210078a58078e54d95c1356e3f1b3",
"sha256:546e5d272e81e75a879823b2ff60572b9ed13aa6e3c1c162e7d6bd45b545f7dc",
"sha256:ef0f41a5e350f723e04c4bcc9000ca31678e0f769d43103b96f0103fc047e874",
"sha256:0f894201225fba4bbb6af89a210ebbee571eedb797ca18a9d26e6358043c63e3",
"sha256:e3051a5bfc686c22ffa1ee97294607295277005e7daeb6828fdbb843efa894a0",
"sha256:7a61889822fa78ebb4024b76deef2db99a19df54311d42b6b0527753f679b715",
"sha256:32f78c2bb8024de932ef311b30a1e757cdc2e3503c8fac8fa921f007593fa97f",
"sha256:3b0fccc79a504c6ef0a0437a04675f8eb1690ecb93ce7c28db7aaa1a14dfabea",
"sha256:895a14e3dc0f09cd66fe825c064a253d0ff7f0a4bc331900b2408a026efc85a5",
"sha256:5b33124a8fd53f0276f651b53bb895a19e307cf1f9cfb227bf486a82f127e68f"
]
},
"Metadata": {
"LastTagTime": "2026-08-26T18:47:10.965504487+08:00"
}
}