镜像构建历史
# 2025-09-11 16:40:12 212.88MB 复制新文件或目录到容器中
COPY amoro-optimizer/amoro-optimizer-flink/target/amoro-optimizer-flink-0.8.1-incubating-jar-with-dependencies.jar /opt/flink/usrlib/optimizer-job.jar # buildkit
# 2025-09-11 16:40:11 601.61MB 执行命令并创建新的镜像层
RUN |3 MAVEN_MIRROR=https://repo.maven.apache.org/maven2 OPTIMIZER_JOB=amoro-optimizer/amoro-optimizer-flink/target/amoro-optimizer-flink-0.8.1-incubating-jar-with-dependencies.jar AWS_VERSION=2.24.12 /bin/sh -c cd $FLINK_HOME/lib && wget ${MAVEN_MIRROR}/software/amazon/awssdk/bundle/${AWS_VERSION}/bundle-${AWS_VERSION}.jar && wget ${MAVEN_MIRROR}/software/amazon/awssdk/url-connection-client/${AWS_VERSION}/url-connection-client-${AWS_VERSION}.jar && wget ${MAVEN_MIRROR}/org/apache/flink/flink-shaded-hadoop-2-uber/2.8.3-10.0/flink-shaded-hadoop-2-uber-2.8.3-10.0.jar && chown flink:flink *.jar && mkdir -p $FLINK_HOME/usrlib # buildkit
# 2025-09-11 16:40:11 0.00B 定义构建参数
ARG AWS_VERSION=2.24.12
# 2025-09-11 16:40:11 0.00B 定义构建参数
ARG OPTIMIZER_JOB=amoro-optimizer/amoro-optimizer-flink/target/amoro-optimizer-flink-0.8.1-incubating-jar-with-dependencies.jar
# 2025-09-11 16:40:11 0.00B 定义构建参数
ARG MAVEN_MIRROR=https://repo.maven.apache.org/maven2
# 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.24MB 执行命令并创建新的镜像层
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.30MB 执行命令并创建新的镜像层
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.94MB 执行命令并创建新的镜像层
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.00MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in amd64) ESUM='d26c566a7010d1303d3979b6f076e7911b49419a609c9e4d81f27262bf47f87c'; BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.26%2B4/OpenJDK11U-jre_x64_linux_hotspot_11.0.26_4.tar.gz'; ;; arm64) ESUM='4ececb5c229763107e9e4acf3b7035db38cf18a98a47176fa5ed1be3f3d15518'; BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.26%2B4/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.26_4.tar.gz'; ;; armhf) ESUM='e4a00a3ea318a63ba97236633f34c8a5477f6cdb643cf6883788840818110f5f'; BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.26%2B4/OpenJDK11U-jre_arm_linux_hotspot_11.0.26_4.tar.gz'; ;; ppc64el) ESUM='69b38f0dde128d8c606012335cd60f1f55afa09b4135582188943bee699ebf03'; BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.26%2B4/OpenJDK11U-jre_ppc64le_linux_hotspot_11.0.26_4.tar.gz'; ;; s390x) ESUM='5d9552b1fb699da6052cbd600e750dd8ff48a89a384d537919a3c999257979dc'; BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.26%2B4/OpenJDK11U-jre_s390x_linux_hotspot_11.0.26_4.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-11.0.26+4
# 2024-08-01 14:57:14 42.90MB 执行命令并创建新的镜像层
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 77.86MB
/bin/sh -c #(nop) ADD file:1b6c8c9518be42fa2afe5e241ca31677fce58d27cdfa88baa91a65a259be3637 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:c09ca27ccaf938c05bbbc62772ed32e2dc8a5d7aaa6ba26242072aa34f03ead4",
"RepoTags": [
"apache/amoro-flink-optimizer:0.8.1-incubating-flink1.20",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/apache/amoro-flink-optimizer:0.8.1-incubating-flink1.20"
],
"RepoDigests": [
"apache/amoro-flink-optimizer@sha256:4bb5cc76501f932dfac850addba600b6ff4531fecdc97e90d6856ccd47b7a5ba",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/apache/amoro-flink-optimizer@sha256:892ff6d76b3cd404131e8708ef35c49e84b5740782c1bdd7153bf6eb48a6a7fe"
],
"Parent": "",
"Comment": "buildkit.dockerfile.v0",
"Created": "2025-09-11T08:40:12.393494596Z",
"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-11.0.26+4",
"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": "amd64",
"Os": "linux",
"Size": 1612527412,
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/5d878479e71e09e0e274984b27f9c6f11fee6fd4b20f330d9e344ea8ba200c73/diff:/var/lib/docker/overlay2/3f8341b7e4a89dbba8ee29df2c2b98df9b7ec323924064216f1ea7b35379f355/diff:/var/lib/docker/overlay2/53e15ea3c4417a5d2bcf296931218a868bc0d5cf85807f64f348e688c364cfef/diff:/var/lib/docker/overlay2/620beb52b14bab34ad6583366ddf9accd28c12c1e3a79eea954453cf148dc3e1/diff:/var/lib/docker/overlay2/7ec338fe7c39218c4515b43111e425805a43c0e76f0a9e6ce2ede450784a3030/diff:/var/lib/docker/overlay2/d225793229cf54a57d4ab2e4f4815ea2d38507e0a49332674ede1a1807da7172/diff:/var/lib/docker/overlay2/ede069687357fd6a9543b654d2fcba1eaf04d3fb6226adb390ac4882dcba5795/diff:/var/lib/docker/overlay2/1ea265cf600e636d69b9fc25b0d17bc3c5681bff52a15b2e0b44d472eff6a1d2/diff:/var/lib/docker/overlay2/9befc3767c6bb71b9e8a7ff3f318a49c72eaaf8ad29594296d0e0d24a1078261/diff:/var/lib/docker/overlay2/9ea70674e7c42ca0ff5d8c97b8ab0465db134632ec4641bf3b90ff687f474817/diff:/var/lib/docker/overlay2/f39264ad1bb4700bc6ed4b56ef1de46f980f9ff90c4349594aaf4e0ac7f411d6/diff:/var/lib/docker/overlay2/ace3f972cf88bd330727fa9a25fd0df2c3fec1df161ac9102bf9f5739b40b82c/diff",
"MergedDir": "/var/lib/docker/overlay2/4db657d69335f040e821811c6928b094b1ed8978578ad50f9bb839d4bf8b4ec0/merged",
"UpperDir": "/var/lib/docker/overlay2/4db657d69335f040e821811c6928b094b1ed8978578ad50f9bb839d4bf8b4ec0/diff",
"WorkDir": "/var/lib/docker/overlay2/4db657d69335f040e821811c6928b094b1ed8978578ad50f9bb839d4bf8b4ec0/work"
},
"Name": "overlay2"
},
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:270a1170e7e398434ff1b31e17e233f7d7b71aa99a40473615860068e86720af",
"sha256:5e41c8687e796153526944cd81682a207e79816f0d85f8905c2144faf29391e2",
"sha256:f1f4dc9155bde7e9f446f327891114756476f5f7ed5545a926af684f88093e89",
"sha256:c4c0b62ea5bf06172e6c50876a38c125c61d5fb47d4c2d2ff9f8887a021caf86",
"sha256:d2e07a5d820ed71d5eb3c898089293a1d366d54bd28dde3716af33097df31fb6",
"sha256:ce7f429156a1f0020472040412c0ff122157a2592a63d74cb3a4d60fea1a259f",
"sha256:7a793109a71693ef2d3b1a126dd31ed36cba758977c7f8b56b3b6c5857bffc93",
"sha256:84af50002d2960ac34cfbcea987a024a721fc7e44fe71075667df25bd4f7d9dd",
"sha256:fcb94221706c9f3e1cf71d9ccccaf0a11080a724b7c05e62cacb12f95d5295ef",
"sha256:731c399737b9cb3bccaeae06701aa2ddd7a9e8506d22ead21fe7426f082a3b37",
"sha256:0ee3432cf6bc3a7c2414a684870bfe4f0962499e4dce7b3945ee6269c8778408",
"sha256:4abefcd496aaa7ac4664b694ddb05e7ed7d77707571281822923abcff570341b",
"sha256:19589fc870e00c6b7361e540c9a81e318744ec838cea7a9319ba0d7853d2619b"
]
},
"Metadata": {
"LastTagTime": "2026-03-27T11:25:12.858660927+08:00"
}
}